2005-04-21:MetaVNC & coLinux on Win XP Pro SP2

coLinux 0.6.2 on Win XP Pro SP2 の続き。
「coLinux ベンリ〜♪」、と思いながら使い続けていたのだが、coLinux のパフォーマンスはさておき realvnc の遅さがだいぶ気になってきていた。
そんな中 DELL が投げ売っていた 20inch 液晶(1680×1050 が出せて6万円!)を2個買ってディスプレイをまるごとリプレースしてしまった。
ハード環境がよくなったので、これを機に巷で話題の MetaVNC を試そう、とインストールしてみたところ、ウワサどおりとても快適な環境になったので、メモをまとめておく。

お役立ちリンク

ページ内リンク


MetaVNC のポイント

VNC を使う理由

もともとの筆者のモチベーションは

X window system 使用時に他の X server 上のアプリを手元の X に持ってきて
実行できるのと同じように、Windows のデスクトップ上で X アプリを実行したい

というもの。
これを実現するストレートな方法は Windows に X を入れることである。
しかし cygwin の XFree86 はどれくらい安定しているものなのかよく知らず、商用の X for Windows にも明るくない。
X on Windows とか買うとそこそこ速い商用の X がついてくるらしいけど、自分で入れた cygwin 環境とぶつかるのもなぁ、といったところ。

そこで妥協案として、画面サイズの大きい VNC の client を広げて、その中で X を楽しむ、というアイディアが 前回のページ で書いた RealVNC を使うアイディア。
しかし RealVNC はどうも使っていて

遅い。

クライアントの Windows もサーバの coLinux も同一マシンなので、ネットワーク速度に問題があるわけでもないんだろうけど。
RealVNC をうけて、現在も開発が続いている TightVNC を使うことを考えいたら、会社でうらべくんに MetaVNC を教わった。

窓指向な MetaVNC

MetaVNC の「売り」はいくつかあると思うが、わたし的にヒットなのはサイトにも書かれている通り、窓指向であることである。
MetaVNC は X の root window 部分を透過領域として扱い、viewer の中の透過領域部分に他の windows アプリを重ねて表示することができる。
vnc の中のアプリの窓を windows アプリのひとつのように意識させることが可能なのだ。

百聞は一見にしかず、なので以下にスクリーンショットを。

MetaVNC の viewer を全画面表示させている。
VNC のサーバ側は coLinux の中の GNOME 2.4。
画面上下に出ているのは GNOME のタイルで、画面上に出ている VNC のアプリは
画面左の emacs と画面右の gnome-terminal のふたつ。
これらの奥にある画面中央の窓は windows の Acrobat Reader で、画面右下の MSN や画面左の IE のショートカットも windows のもの。

# 作業的には coLinux で TeX のコンパイルをして、dvipdfmx で作った PDF を
# samba 経由で windows 上の Acrobat Reader でチェックしている、という図。

操作的には gnome-terminal も emacs も Acrobat reader もそれぞれ1アプリとして同様に扱える。
X を使ってて他の X server からのアプリを手元に持ってきているのとほぼ同じフィーリングで扱えて、とてもよい感じなのだ。


MetaVNC サーバのインストール on coLinux

ダウンロード

SourceForge のダウンロードページ から metavnc-unix-0.3.4.tar.gz をもらってくる。
Debian なら deb を誰かがつくってるかな、と思ったが sarge ではないらしい。

おそうじ

realvnc な deb を入れてしまっていたので、apt-get remove

% sudo apt-get remove --purge vnc-common

コンパイル・インストール

/usr/local/src/ 以下等に展開、がしがしとコンパイルし、インストール。

% cd /usr/local/src/
% tar xzf metavnc-unix-0.3.4.tar.gz
% cd metavnc-unix-0.3.4
% cd libvncauth/
% xmkmf
% make
% cd ../windowmonitor/
% xmkmf
% make
% cd ../xc/config/cf/
% cp host.def.Xvnc host.def
% cd ../../
% make World
% sudo make install

% cd ../vncpasswd/
% xmkmf
% make
% sudo cp vncpasswd /usr/local/bin/
% cd ../
% sudo cp vncserver /usr/local/bin/

MetaVNC クライアントのインストール on Win XP

ダウンロード

SourceForge のダウンロードページ から metavnc-win32-viewer0.3.5.exe をもらってくる。

インストール

もらってきた exe ファイルをダブルクリックして、あとはてきとーに。


使う

viewer は全画面表示して使うのがよい。
なので vncserver の起動では画像サイズ指定は windows でのディスプレイの設定にあわせて。

% vncserver -geometry 1680x1050 :1

MetaVNC の viewer を起動し、接続する。


おまけ

現在のわたしの職場の環境。
画面が広いのはよいことです。(^^;