21.b. Xクライアントの利用

目次へ 前の項目へ次の項目へ

TELNET による遠隔操作はサーバの保守管理などには向いていますが、それだけで は面白くありません。コマンドベースの処理が必要な場面で威力を発揮してももう ちょっと違うこともしてみたくなることでしょう。そこで、現在使用しているよう なウィンドウを表示するアプリケーションをネットワーク越しに利用してみましょ う。

Xウィンドウシステムはネットワーク透過という性質を持っています。これは、自 分の操作している端末であろうと、ネットワーク上の別の端末であろうと同等に扱 うことができるものです。いわゆる、クライアントサーバシステムの上に成り立っ ているというと、おわかりになる人もいると思います。ただ、ちょっと感覚が違う のは、自分の目の前の端末がXサーバでネットワーク上のクライアントを利用する、 という通常のサーバに対する考え方と反対になることです。詳しいことは、結構や やこしいのでそのくらいにしておいて、さっそく始めますが、それには準備が必要 です。

まず、ご自分の操作している端末でターミナルを起動してください。さきほど、 TELNET接続したターミナルはそのままにしておいて、別にもう一つ必要になります。 そこで、次のコマンドを入力してください。

$ xhost +

すると、以下のようなメッセージがでます。

access control disabled, clients can connect from any host
xhost:  must be on local machine to enable or disable access control.

意味は、クライアントはどこのホストからでも接続できますよ、ということです。 この状態で、今度は、TELNET接続しているターミナルに別のコマンドを入力します。

$ export DISPLAY=pc1**:0.0

**は今ご自分が操作している端末の番号が入ります。これは、リモート(別の場所 )にある端末に表示するディスプレイの場所を教えています。

では、何かウィンドウアプリケーションを起動してみましょう。何でもよいですが、 たとえば、

$ gedit &

とすると、普通に画面にエディタのgEditが起動したことと思います。しかし、そ のgEditが動いているのは、目の前のパソコンではなくTELNET接続しているパソコ ンです。教室の環境は、どれも中身が同じですので、それだけでは面白くありませ ん。では、同じことを私が操作しているこの教師用のパソコンに対して実行してみ ましょう。ここには、たとえば、emiclockと言うちょっとかわいい、オタクっぽい時 計がインストールしてあります。学生さん用のパソコンには入っていません。自分 のターミナルで

$ emiclock &

としても、

bash: emiclock: command not found

となるはずです。では、先程と同様に接続して起動してみましょう。接続は、

$ telnet pc181

として、以下、同様に行います。そして、exportコマンドをすませたら、 先程と同様にemiclock起動コマンドをそのターミナルで実行してみましょう。 今度は、画面に現れるはずです。

このようなネットワーク透過のシステムは、コンピュータの値段が高かった時代に 大変重宝しました。処理に優れた高速なワークステーションを一台だけ導入し、ユー ザは別の安いXウィンドウシステムが表示できるだけの端末からネットワーク越し に操作することが可能だったからです。今でも役に立つのは、日本語入力の際のか な漢字変換の辞書を一ヶ所に置いておけば、どの端末からでもその辞書を利用して かな漢字変換ができるので、複数の環境に辞書をコピーしたり、または、日本語入 力プログラムを複数購入しなくてもすむからです。

でも、そのような特殊な用途だけでなく、自分の部屋にいながらにしてこの教室の 動作環境を確かめることができる、と言うような用途に私は満足しています。


ページの先頭へ目次へ 前の項目へ次の項目へ