マイコミジャーナル

知りたい!を刺激する総合専門サイト


  1. エンタープライズ

  2. SE力
  3. コラム
  4. Yet Another 仕事のツール

【コラム】

Yet Another 仕事のツール

91 Synergyでキーボード、マウスを共有する

2005/12/13

鶴田展之

かつて「いつかは一人一台の時代がくる」と言われていたPCだが、いつのまにやら価格もリーズナブルになり、当たり前のように2〜3台のPCが机の上に積み上がるようになってきた。個人的にも、デスクトップとノートを両方所有している人は多いだろう。ちなみに筆者の机の周辺には、現在3台のデスクトップと1台のサーバ、そして2台のノートが置かれており、それぞれにオフィスと地球を暖める仕事をこなしてくれている。

さて、ひとりで複数のPCを使うようになると、困るのが入出力インタフェースの混乱である。ディスプレイに関しては、安価な切り替え機があるのでさほど不便なことはないが、キーボードやマウスまで切り替え可能な所謂「PC切替機」は、安くても2万円程度はするし、接続台数も2〜4台しか対応できないものがほとんどだ。できれば、もっと安価かつ柔軟に、複数のPCを1セットのキーボード、マウスから集中コントロールしたい。そこで今回紹介するのが、「Synergy」というソフトウェアだ。

Synergyは、言わばTCP/IPを使った仮想的なPC切替機である。例えば、図1のようにPCが3台あるとしよう。

図1

これらのPCは、互いにTCP/IPで通信できることが前提だ。Synergyを全てのPCに導入すると、「B」のPCに接続されたキーボード、マウスを使って、「A」、「C」のPCを操作できるようになる。ディスプレイにはそれぞれのPCからの出力が表示されるが、これらの画面は全てひとつの仮想的なスクリーンとして扱われるため、マウスカーソルは3つのディスプレイを自由に動き回ることができる。最近のビデオカードには複数のモニタを一つのスクリーンとして扱うマルチディスプレイの機能を備えたものがあるが、Synergyでは物理的に全く別のPC間で同様のことができるイメージだ。

図2

さらに、Synergyは対応プラットフォームの幅も広い。Windowsは95からXPまでほぼ全てのバージョンで動作可能。Linux/UNIXや、Mac OS Xにも対応している。つまり、WindowsでもMacでもLinuxでも、手元に用意した一組のキーボード、マウスだけを使えば操作できるのだ。

図3

Synergyさえ導入しておけば、机の上がキーボードだらけになることもない。「WindowsにログインしようとしてCtrl + Alt + Deleteを押したら、となりのLinuxが再起動してしまった」というような、イライラさせられるようなミスも減らせるだろう。

さて、導入方法だが、必要なファイルや導入手順はOSによって異なる。まず、Windows向けには.exe形式のインストーラが提供されているのでこれを実行するだけで簡単にインストールできる。Mac OS Xの場合は、ダウンロード・展開したフォルダ内にある「synergyc」、「synergys」を/usr/local/bin、設定ファイル「synergy.conf」を/etcにでも配置すればよい。Linux向けにはRPM形式のバイナリが用意されているので、RPMベースのディストリビューションではこれを利用すれば良いだろう。RPM以外のパッケージ管理機構を持つLinuxや、他のUNIX系OSの場合には、ソースコードを入手してビルドする必要があるが、ほぼお約束の「configure; make; make install」で導入できるはずだ。

導入が完了したら、動作の設定を行おう。まず、それぞれのマシンが、「サーバ」と「クライアント」のどちらの役割を担当するかを決める。Synergyでは、実際に私たちが操作するキーボード、マウスが物理的に接続されているマシンが「サーバ」となる。サーバのキーボード、マウスからの操作を受け入れる側が「クライアント」だ。Windowsの場合、サーバ、クライアントのどちらになるかは、GUIの設定画面から指示できる。クライアントにする場合は、「Use another conputer's shared keyboard and mouse (client)」を選択し、サーバのホスト名を指定する。

図4

サーバにする場合は、「Share this computer's keyboard and mouse (server)」を選択し、サーバである自分自身と、クライアントの関係を定義する。例えば、自分の画面の右端と、クライアント画面の左端を繋げたい場合、自分の「Right」にクライアントのアドレス、クライアントの「Left」に自分のアドレスを設定すればよい。

図5

図6

図7

UNIX、Mac OS Xの場合は、設定ファイルに自分で設定を記述する。最低限、接続する全てのホストのアドレスを「screens」セクションに列挙し、それぞれの関係を「links」セクションに定義しておこう。

section: screens
    Aのアドレス:
    Bのアドレス:
    Cのアドレス:
end

section: links
    Aのアドレス:
       right = B
    Bのアドレス:
       left = A
       right = C
    Cのアドレス:
       left = B
end

UNIX、Mac OS Xでは、クライアントとサーバで起動するプログラムが異なる。サーバを起動したければ、以下のように「synergys」を起動する。

$ /usr/local/bin/synergys --daemon --config /etc/synergy.conf

クライアントになる場合は、サーバのアドレスを指定して「synergyc」を起動しよう。

$ /usr/local/bin/synergyc --daemon サーバのアドレス

なお、Synergyは単にキーボードとマウスを共有するだけでなく、クリップボードの共有もサポートしている。物理的に別々のマシンでコピー&ペーストが可能になるので、テキストベースの作業効率は大幅に向上できるだろう。複数のPCを使っている方は是非試してみて欲しい。


特別企画

注目情報


特設サイトの必見情報



注目サイト