【コラム】

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を使っている方は是非試してみて欲しい。

    新着記事

    特設サイトの情報

      人気記事

      一覧

        イチオシ記事

        新着記事

        特別企画

        マイナビニュースマガジン