部屋を掃除したら漫画が沢山出てきたので書く日記

漫画とか合唱とかUNIXとかLinuxとかについて書く日記です。

Synergyで一組のキーボード、マウスで複数のPCを操作してみよう

通常、一台のパソコンを操作するには、キーボード、ディスプレイおよびマウスが一組必要です。たとえば二台のパソコンがあって、それを操作しなければならない場合はこれが二組必要となります。三台、四台・・・と増えた場合、同様にキーボード、ディスプレイおよびマウスを同じ数だけ用意しなければなりません。
使う人がパソコンの数だけいるならそれは用意する必要がありますが、たとえば一人だけで操作するのならば、一組で済めば大変便利です。

これを実現する装置として、KVMスイッチとかCPU切替器と呼ばれるものがあります。装置に各パソコンに挿すべきキーボード、ディスプレイおよびマウスから伸びるケーブル類を集約し、装置から各パソコンにケーブルを挿して、使うときにボタンとかで切り替えるのです。
学生時代に学生寮にいたとき、「テレビとビデオとファミコンとプレステの画面出力切替」のためにAVケーブルのセレクタを使っていましたが、これと大体同じ感覚です。

ただ、この装置は結構お高いです。あんまり壊れるものではないので、ヤフオクで中古品を狙うとよさそうなのですが、結構競争率が激しくてなかなか競り落せなかったりします。


ところが、キーボードとマウス一組で複数のPCを操作できるフリーのソフトウェアで実現できることを最近知りました。そのソフトが「Synergy」というものです。このソフトを使用すると、たとえば

  • Windows XPがインストールされているデスクトップPC
  • Solaris 10がインストールされているデスクトップPC

があり、それぞれのPCにはキーボード、マウス、ディスプレイが接続されている場合に、どちらか一方のキーボード、マウスでどちらのPCも操作できるというものです。つまり、

  • キーボード、マウス・・・WindowsXPのもの
  • ディスプレイ・・・WindowsXPのものとSolaris 10のもの

というように使用できます。机の上には二つのディスプレイと、一組のマウス、キーボードがあれば二台のPCが操作できるのです。
なお、やろうと思えば操作したいPCは更に増やすことも可能です。今のところ三台まではやった事があります。

実際の様子はこちらのサイトの画像などをご覧ください(自分でもなんか撮影しようと思ったのですが会社の自席はさすがにまずいと思ったのでやめました)。

普通、複数のパソコンを操作する機会はあまり無いと思いますが、私は会社で愛用していますので設定方法等を説明します。

前提条件

1.
PCはLAN等でそれぞれ通信可能な状態であること。ここでは
WindowsXP 192.168.0.1
Solaris 10 192.168.0.2
というIPアドレスが設定されている事とする。

2.
使用にあたりsynergyサーバsynergyクライアントが必要となる。ここでは
synergyサーバはWindows XP
synergyクライアントはSolaris 10
とする。

ソフトのダウンロード

1.Windows XP用Synergyのダウンロード
公式サイトの画面左側にある「Latest Release」をクリックするとダウンロード画面になるので、そこから「1.3.4-Windows-x86.exe」をダウンロードします。

または、こちらから日本語版(SynergyInstaller-1.3.1-ja.exe)をダウンロードします。
http://wiki.nothing.sh/page/memo/Synergy

私は日本語版を使いました。

2.Solaris 10用Synergyのダウンロード
Solaris用インストーラは存在しないので、ソースコードをダウンロードします。
公式サイトの画面左側にある「Latest Release」をクリックするとダウンロード画面になるので、そこから「1.3.4-Source.tar.gz」をダウンロードします。

インストール

1.Windows XP用Synergyのインストール
ダウンロードしたインストーラを実行します。特に特記すべき点は無いので割愛します。

2.Solaris 10用Synergyのインストール
ダウンロードしたソースコードからビルドします。
なお、gccのバージョンは

3.4.6

であり、スーパユーザの環境変数として

LD_LIBRARY_PATH=/usr/local/lib:/usr/sfw/lib:/usr/lib::/usr/sfw/lib:/usr/local/lib:\
/etc/lib:/usr/local/ssl/lib:/usr/X11/lib:/usr/lib:/lib
PATH=/usr/local/sbin:/usr/local/bin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/local/bin:\
/usr/ccs/bin:/usr/sfw/bin:/opt/sfw/bin:/usr/openwin/bin/:/usr/ccs/bin:/usr/proc/bin:/usr/ucb

を設定しています。

1.3.4-Source.tar.gzの解凍
% /usr/sfw/bin/gtar xvfz 1.3.4-Source.tar.gz
configure、makeの実行
% su -
# cd synergy-plus-1.3.4
# ./configure
# make
インストール実行
# make install

/usr/local/bin以下にインストールされると思います。

これでインストールは完了です。Solaris 10を使う場合のインストールが面倒ですが、二台ともWindowsであれば難しくないと思います。
*1

設定

Windows側(Synergyサーバ)のSynergyを設定します。まずSynergyを起動します。以下のような画面が表示されます。

ここで、画面中段の「このコンピュータのキーボードとマウスを共有する」にある「設定」ボタンをクリックします。以下の画像のように「スクリーン」「リンク」という二つの設定箇所があると思います。

これらの名称は直感的になんなのか判りづらいと思うので説明します。
「スクリーン」は、Synergyで操作するPCを登録する箇所です。操作したいPCが二台であれば二台分、三台であれば三台分設定しておく必要があります。

「リンク」は、「スクリーン」で登録したPCの、操作の仕方に関する設定です。WindowsXP PCとSolaris 10 PCのそれぞれ二台のディスプレイを一つのマウスで操作するための配置などを設定します。

これでも良く判らないと思いますので実際に設定してみましょう。まず「スクリーン」について設定します。

1.スクリーンの設定
まず、WindowsXP PCの設定を登録します。

スクリーンの欄の下にある「+」というボタンを押して新しい設定を作成します。
以下のような画面が表示されます。

  • スクリーン名は管理のための名称です。適宜判りやすいものにすると良いでしょう。ここでは「WinXP」とします。

「192.168.0.1」
を記入します。

そのほか「オプション」とか「モディファイア」とかありますが、とりあえず動かすのには必要ないので特に設定せず「OK」を押下します。

作成後に設定を消したい場合は「-」ボタンを押します。また、設定内容を変更したい場合は「編集」ボタンを押して再度設定すればよいです。

次にSolaris 10 PCの設定を登録します。
WindowsXPと同様に「+」というボタンを押して新しい設定を作成します。
あとはほぼ同じですが、
スクリーン名を「Sol10」
エイリアスを「192.168.0.2」
として「OK」を押下します。

これでスクリーンの設定は完了です。

2.リンクの設定
次にリンクの設定です。

画面下側にある

「  」の「  」側

というプルダウンメニューで、

「WinXP」の「右」側

と選択します。さらにその右側にある

0 〜 100 % 「」

という欄は、

0 〜 100 % 「Sol10」

と選択し、その下にある「+」
を押下します。
判りづらいですが、これで、
「WindowsXPのディスプレイ上のマウスポインタを右側に移動させるとSolaris 10のディスプレイにポインタが移動して操作できるようになる」
という動作が可能になります。

さらにSolaris 10からみた設定を行います。
画面下側にある

「  」の「  」側

というプルダウンメニューで、

「Sol10」の「左」側

と選択します。さらにその右側にある

0 〜 100 % 「」

という欄は、

0 〜 100 % 「WinXP」

と選択し、その下にある「+」
を押下します。
これで、
Solaris 10のディスプレイ上のマウスポインタを左側に移動させるとWindowsXPのディスプレイにポインタが移動して操作できるようになる」
という動作が可能になります。マウスポインタの移動によってディスプレイが切り替わるという動作は、Windowsのデュアルディスプレイを使ったことのある方なら、なんとなく理解できると思います。


なお、これは私の机の上には
左側:WindowsXPのディスプレイ
右側:Solaris 10のディスプレイ
というように配置しているためこのようにしていますが、配置に合わせて右側、左側、上側、下側、と好きに変更できます。サーバとなるPC含めて5台まではいける気がします(やったことはありませんが)。興味があったら試してみてください。

使ってみる

Solaris 10側でSynergy起動

% /usr/local/bin/synergyc 192.168.0.1

と実行します。PSコマンドなどでsynergycプロセスが上がっている事を確認しましょう。

■WindowsXP側でSynergy起動
「このコンピュータのキーボードとマウスを共有する」ラジオボタンをクリックした上で、「スタート」を押下します。以下のように「起動」というプルダウンが表示されますので「OK」を押下します。

以下のようにログが表示されますので、しばらくすると
「NOTE: client "Sola10" has connected」
というようなメッセージが出たら接続完了です。操作できるようになっているはずです。

マウスポインタを右に動かし、Solaris 10側ディスプレイで動くようにしたら、キーボードもSolaris 10に対してで入力できるようになります。
マウスポインタを左に動かし、WindowsXp側ディスプレイで動くようにしたら、キーボードもWindowsXPに対してで入力できるようになります。

さらに、クリップボードの共有」という機能もあります。WindowsXP側でコピーした文字列などを、Solaris 10側で貼り付けできる、というものです。これは地味に大事な機能で、リモートデスクトップ機能のあるソフトでは意外と実現されていなかったりします。

というわで複数パソコンがある場合大変快適です。デスクトップPCのキーボードでノートPCを操作したい、という時にも良いと思います。是非お試しください。

日本語の入力について

サーバであるWindowsXPでは、これまでと変わらず日本語入力が出来ますが、Solaris 10側でATOKによる日本語入力をしたい場合は、マウスポインタSolaris 10側にある状態で「Ctrl + Space」(CtrlキーとSpaceキーを同時に押す)を押す事で日本語入力と半角文字入力を切り替える事が出来ます。

実は日本語入力についてはうまく対応できていない部分が色々あるそうで、たとえばかな入力で「を」が入力できない、といった問題があるそうです。Windows同士であればあまり問題は無いみたいですが試していないのでやってみてもらえばと思います。

ではー。

*1:1.3.4のINSTALLファイルはhttp://code.google.com/p/synergy-plus/wiki/Setupを読め、としか書いていないがこのURLに行ってもインストール手順はWinとMacのしか書いていなかったです。ひどい!