まずは、下のようにしてcoLinuxで割り当てられたIPアドレスをチェックする。この場合は192.168.0.2がcoLinuxに割り当てたIPアドレス。Windowsマシンで動いているXサーバ(Xming)にこのIPアドレスからの接続を許可する設定を追記する。
coLinux:~# ifconfig eth0 | grep inet inet addr:192.168.0.2 Bcast:192.168.0.255 Mask:255.255.255.0
で、現状の確認。Xmingをインストールしたディレクトリ内のX0.hostsというファイルに接続を許可するIPアドレスが書いてあるので、これを見てみるとlocalhostからの接続のみが許可されている。
> type "C:\Program Files\Xming\X0.hosts" localhost
coLinuxはlocalhostで動いているわけではないのでこのままではcoLinuxから起動したXアプリケーションはwindowsで動いているXmingから接続拒否されるはずだ。ためしに下のようにしてcoLinuxでxeyesを起動してみる。
coLinux:~# xeyes Xlib: connection to "192.168.0.1:0.0" refused by server Xlib: No protocol specified Error: Can't open display 192.168.0.1:0.0
ということで、拒否された。Xmingのログにも下のように拒否したとある。
reject from IP 192.168.0.2
ということで、X0.hostsにcoLinuxのIPアドレスを追記してcoLinuxからXmingへの接続を許可してみる。
> echo 192.168.0.2>> "C:\Program Files\Xming\X0.hosts" > type "C:\Program Files\Xming\X0.hosts" localhost 192.168.0.2
これで設定ファイルはOKのはずだ。この設定を反映させるためにXmingを終了して起動する。
最後にcoLinux側でDISPLAY変数をセットすれば、coLinuxでxeyesを起動出来るはずだ。
coLinux:~# export DISPLAY=192.168.0.1:0.0 coLinux:~# xeyes
そもそも、coLinuxでXアプリケーションを使うのにわざわざsshdを立てたり、sshコネクションを貼る必要は一切ない。それどころか、sshの暗号変換処理を挟むことで、体感速度が遅くなるようなきがする。