現在、牛マシンにはCentOS3.7(最小構成)+VMWare Serverが入っている。やはり家でもVMWare Serverを試しているのだ。ところで、今回はそれとはあまり関係なくX端末を作成してみたいと思う。

X端末とはXサーバの機能以下略。

以前Windows+Cygwin/XでXの画面をWindows上に表示する話をしたが、今回はXサーバしか入っていないLinuxマシン(以下X端末)と、GDM+XDMCPを有効にしたSolaris10マシン(以下アプリサーバ)の2台で、完全なるX端末環境を整える事を目的とした。

・アプリサーバマシンにSolaris10をインストール
今回はアプリサーバとして牛マシンVMWareのゲストにSolaris10を入れた。VMだと余計に時間がかかる。面倒なのでフルパッケージ入れた。固定IPとして192.168.1.205を振る。
インストール後、XFSに日本語を加え、gdmsetupコマンドでお手軽にXDMCPの設定を行う。

・X端末にVineLinux 3.2(最小構成+X)をインストール
X端末もハードの調達ができなかったためチーズバーガーパソコンのVMWareゲストにする。構成はぎりぎりまで容量を削る事を目標とし、メモリ96MB、ハードディスク1GBだ。
こちらも普通にインストール。パッケージをX Window Systemのみチェック。次へすすむ。1GBのハードディスクになんとか入る。
インストール後、Xサーバの設定だけきっちり行う。Anacondaでやってしまってもかまわない。
次にkernelを含むパッケージをapt-getでアップデート。さらにX端末ではsshdやpostfixなども不要であるため、サービスを停止。

さてここからが本番。/etc/inittabを開く。
デフォルトのランレベルを5に変更(Vineではランレベル5がグラフィカルログイン)。これもAnacondaでグラフィカルログインを選んでもかまわない。次に一番下にある

x:5:respawn:/etc/X11/prefdm -nodaemon

という行に着目。この/etc/X11/prefdmというシェルスクリプトは、インストール&設定されているDisplay Manager(xdm、gdm、kdmなど)を探して起動するというものだ。Vine3.2は大抵gdmが起動するだろう。ここを、直接Xが起動するように書き換える。

x:5:respawn:/usr/X11R6/bin/X -query 192.168.1.205 -fp tcp/192.168.1.205:7100

後はマシンを再起動すると、X端末側では、電源を入れるとすぐにアプリサーバへXDMCP接続をしに行くようになる。

後はこれを2、3台作ればどのX端末からでも同じ環境を使う、という状況が実現できる。

ここで検証したようにハードディスクは1GBでOK。メモリも32MBでも十分そうだ。5000円~6000円で売っているような古マシンでもX端末は割といけるのではないかと思われる(やはりCPU、GPU、NICが遅いとレスポンスは悪くなる)。