ちょっと前に話題に上がっていたSynergyを入れてみた。
タイムリーで話題になっていたのに、その時は全然凄さにきがついて居なかった。
たぶん当時は錆び付いていて、感覚が麻痺していたに違いない。
Synergyは複数台のPCでキーボードとマウスを共有出来るソフトです。
Synergyの凄い所は、異なるOSでも共有ができる点。それどころかクリップボードの共有まで出来てしまいます。
WindowsでコピーしたものをMacOS上のテキストエディタに貼り付けなんて出来てしまう。
そんな事が、ハードウェアなしに出来るのか!?っておもったんですが、
どうやらデーモンプロセスを常駐させてTCP/IPでやりとりしている様です。
素晴らしいの一言。
早速自宅で、Windows+IntelMac+LinuxでSynergyを使ってみることにしました。
Synergyのインストール
各マシンにSynergy2をインストールします。現在最新版は1.3.1で、このバージョンを使います。
◇Windows (WindowsXP)
http://synergy2.sourceforge.net/からSynergyのバイナリ(exeファイル)をダウンロードしてきます。
単純にインストーラ形式なので楽ちん。
◇Linux (fedora core6)
Windowsの時と同じようにサイトからソースを落としてきてもいいんですが、yumでインストールしてしまいました。
$ yum install synergy
ソースからコンパイルするなら、
# . ./configure # make # make install
でOK。
◇IntelMac
ソースからコンパイルすれば良いんですが、IntelMacの場合はそのままコンパイルするとBus errorが起きます。
masuidriveさんの「IntelMacでSynergy2を動かす」というエントリに解決方が書いてあった。
lib/platform/COSXKeyState.cppの中でgetKeyMapでKCHRを取得する所でコケている様なので、356行のgetKeyMap(keyMap, g, kchr);をコメントアウトしてみたら、動いた。
バイナリ版を公開しているのですが、バージョンが1.3.0と若干違ったので、ソースを修正してmake installすることにしました。
バージョン1.3.1ではlib/platform/COSXKeyState.cppの354行目にgetKeyMap(keyMap, g, kchr);があるので、コレをコメントアウトしておきます。でいつもの奴でインストール。
# . ./configure # make # make install
synergy.confの作成
Synergyを使うには一台がサーバー機になってクライアントとして接続するようにします。また、サーバー機にはPC同士の配置をsynergy.confに書いてあげる必要が有ります。
現在私の構成だと、
Windows Mac Linux
という並びになって居るので、キーボード、マウスを使うMacをサーバーにします。
この並びを設定ファイルにしてあげればいいのですね。
ベタに/etcの下にsynergy.confを作成します。
$ sudo vi /etc/synergy.confsection: screens
hostname_mac:
hostname_linux:
hostname_win:
endsection: links
hostname_linux:
left = hostname_mac
hostname_mac:
right = hostname_linux
left = hostname_win
hostname_win:
right = hostname_mac
end
hostname_xxxを環境に合わせて読み替えてください。
hostname_xxxはターミナルでhostnameを実行した時の出力です。
自宅ではDNSが無いので、どうなるのかな?と思ったのですが、設定ファイルの名前はDNSが引けなくても良いようです。
逆にIPを書いてもダメでした。通信するときにhostnameの値をsynergy.confから引いている様です。
synergy起動
下記コマンドを実行してサーバーから起動します。通常はバックグラウンドプロセスになりますが、オプションに-fを付けるとデバック出力が見れます。
私の場合mac上で下記コマンドを実行。
# /usr/local/bin/synergys--daemon-f --config /etc/synergy.conf
これでサーバーが起動しました。
WindowsはSynergyのGUIの"Use anogher computer's shared keyboard and moouse (client)"のテキストインプットにサーバーのホスト名かIPを入力してStartボタンを押します。DNSでホスト名が引けない場合はIPで入力してください。
最後にLinuxです。
# /usr/bin/synergyc--daemon[サーバーのホスト名 or IP]
以上で設定終わりです。
サーバー機の画面左右にマウスポインタを持って行ってください。どうです?ちゃんとクライアント機のマウスポインタが動きますか?
ちなみに、Windowsを親機にする場合は設定する内容は同じですが、GUIベースになります。
MYCOMジャーナルの「Synergyでキーボード、マウスを共有する」を参考にしてみてください。
カテゴリ
技術トラックバック(0)
このブログ記事を参照しているブログ一覧: Synergyをようやく入れてみた
このブログ記事に対するトラックバックURL: http://hackmylife.net/mt/mt-tb.cgi/395
















コメントする