【コラム】
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」に自分のアドレスを設定すればよい。
UNIX、Mac OS Xの場合は、設定ファイルに自分で設定を記述する。最低限、接続する全てのホストのアドレスを「screens」セクションに列挙し、それぞれの関係を「links」セクションに定義しておこう。
Aのアドレス:
Bのアドレス:
Cのアドレス:
end
section: links
Aのアドレス:
right = B
Bのアドレス:
left = A
right = C
Cのアドレス:
left = B
end
UNIX、Mac OS Xでは、クライアントとサーバで起動するプログラムが異なる。サーバを起動したければ、以下のように「synergys」を起動する。
クライアントになる場合は、サーバのアドレスを指定して「synergyc」を起動しよう。
なお、Synergyは単にキーボードとマウスを共有するだけでなく、クリップボードの共有もサポートしている。物理的に別々のマシンでコピー&ペーストが可能になるので、テキストベースの作業効率は大幅に向上できるだろう。複数のPCを使っている方は是非試してみて欲しい。
ヘッドライン
- 【レビュー】BOOK REVIEW - 現場に振り回されるだけのSE人生がイヤならチカラをつけよう[09:00 2/10]SE力
- 【レポート】暗号2010年問題に向け「いつまでに何をすべきか」 - ベリサインが説明[08:00 2/10]セキュリティ
- ルネサス、RXファミリ第3弾としてモータ制御向け「RX62T」を製品化[07:00 2/10]エレクトロニクス
- Rambus、次世代携帯機器向けメモリ「モバイルXDR」を発表[21:16 2/9]エレクトロニクス
- Intel、基幹業務システム向け次世代プロセッサ「Itanium 9300」を発表[20:47 2/9]エレクトロニクス
- MicronとNanya、42nmプロセスを採用した2GビットDDR3を開発[20:07 2/9]エレクトロニクス
- ISSCC 2010 - 日立、1Gbpsあたり消費電力1mW以下のトランシーバ回路を開発[19:52 2/9]エレクトロニクス
- CSSを最適化する3つのツール[17:17 2/9]JavaScript / CSS / HTML
- TIOBEプログラミング言語人気 - Scratch/Erlang/Scala/JavaFX[17:17 2/9]プログラミング
- Microsoft、Red Hat Linuxサポートをひっそり追加[17:15 2/9]システム管理






