Xming フリーのXサーバ

Xming を試してみました

Xmingとは リモートの Xの処理(GUI描画 マウス入力 キーボート入力) をローカルのWindows に転送する仕組みです

Xプロトコルの転送の仕組み

UNIX系の Xには「画面転送」という仕組みが標準機能として備わっていて
上記の絵のように リモートホストに画面描画や入力イベントの権利を転送できる

  • プロセスはあくまで「転送元」UNIX上で実行されている
  • 画面表示や入力系はリモートホスト つまり 別の X や Windows で行なわれる
  • よってあたかも「手元の UNIXプログラムが 遠くの Windowsで操作できる」環境が実現できる
  • Windowsからは SSHにより Xクライアントにアクセスする

実は 4つ目が曲者かも UNIXマシンにあらかじめ SSHがインストールされていて
Windows → UNIX に SSHアクセスが可能な環境に設定されていることが前提なんです

インストール

Windows XPのマシンに Xming をインストールしてみました
まず Straight Running のホームページから下記のアーカイブをダウンロードします
Xmingアーカイブ
Xming本体 と Xの日本語フォント一式 です これらを実行して同じディレクトリにインストールするようにします
Xmingディレクトリ
Xmingインストール後 ディレクトリの中身は上記のようなファイルが入っています

plink.exe SSHクライアントプログラム 実は Xmingには plink.exeが同梱されている(親切!)
X0.hosts アクセス制御設定ファイル 設定は下記参照
XLaunch.exe 環境設定 + Xming.exe起動 ランチャー

Xmingの利用を開始する前に x0.hosts を設定しておきましょう

myhost
localhost
 

これは どの Xクライアント(この場合 UNIXマシン)からの接続を許可するかの
アクセス設定ファイルとなります デフォルトは localhost のみで
ネットワーク越しの接続を受けないので
ここに許可するホスト名(か IPアドレス)を記述しておきます

設定はこれだけ あ SSHで UNIXに接続できる大前提はここでは省略しますが
あと Xmingの使い方を 2通り紹介します

方法の1つ目 XLaunch.exe を起動する方法

スタートメニューに XLaunch という項目が追加されていると思います
これはお手軽な起動方法です

Xmingランチャー起動画面
ランチャーを起動すると 画面転送の方式や 起動する UNIXプログラムの設定が
対話形式で設定できます おすすめは Multiple Window + plink.exe 方式の起動です

Multipe Windowの起動例
イメージの Multiple Window というのは
UNIXのプロセスを 1つずつ Windowsの Windowで開く方式です
Widnowsのデスクトップに従来のアプリケーションと UNIXの画面転送を同居できます
(図は Widnowsの文字コード表 と UNIXのxfontsel を同時起動)

方法の2つ目 XLaunch.exe を使わない方法

まず Windows側で Xming を実行します

Xmingタスク常駐
タスクバーに Xマークが常駐しているのが確認できます
実はこれで既に Xサーバが起動完了しています
あとは UNIX側マシンにログインして 画面転送するだけ

Xmingに個別に転送
画面では TeraTerm で普通に UNIXマシンにログインして
「export DISPLAY=(Windows側ホスト名):0」により 画面転送先を設定しています
この設定をしておくことで 以降起動されるプログラムが Windows側に転送されます

Xmingがうまく動かない場合は SSHの設定ミス (sshdが起動してない) とかをチェックしてみてください
私の環境では キーボード設定が特殊だったせいか 日本語入力がうまくいかなかった
ここは ちょっと調査の必要ありかと
昔は 4〜5年ほど前? Xサーバ自体がフリーで提供されることはなく 5〜6万円とかしてたんですよー Xmingはフリーでかつ導入しやすくていい感じです