簡単に言えば、XDM (the X Display Manager) は、コマンドラインの 'login' プロンプトをグラフィック環境に置きかえたものと考えることがで きます。本当は、もっと多くのことをしています。
一般的に、XDM は、電源投入時に 'root' ユーザ (もしくはシステムの起動 スクリプト) により起動され、グラフィックログインプロンプトをユーザに 与えます。そしてログインすると、XDM は、そのユーザの X セッションを 管理します - すなわち、ウィンドウマネージャやアプリケーションの実行 を開始します。
これは、多くの Linux ディストリビューションのデフォルトのインストー ルで行われている標準的な 'simple local machine login' の設定とみなせ ます。しかし、XDM は、リモート X サーバ (群) の管理や、リモートの 'X 端末' にログインプロンプトを表示することもできます。要するに、ローカ ルマシンに限りません - ネットワークで接続された他のマシンを簡単に管 理できます。
XDM は、いろいろな設定ができるユーティリティで、この文書では、ちょっ とだけ、この文書に必要な上辺だけなぞります。この文書の狙いは、X 端末 とアプリケーションサーバをそれぞれ他のものへ接続する設定の十分な情報 を提供することです。この文書で検討している話題のもっと詳細な情報は、 Section 7 を参照してください。
セキュリティ上の注意 - X (のデフォルトの設定) と XDM は、特に安全と いうわけではありません。'信頼できる' ネットワーク上で X を実行し、 安全性を論点にしなくてもよいことを想定しています。 X 接続の安全性を強化する方法の詳細 (および X のネットワーク機能を使 用することの詳細) に関しては、LDP にある 'Running Remote X Applications' HOWTO 文書を参照してください (Section 7 を参照のこと)。
この用語は様々なシステム構成を網羅することが出来ますが、ここでは単純 の為に、ネットワーク接続した、キーボード、マウス、モニタがあるマシン でネットワーク上のどこかにあるアプリケーションサーバに接続できる X ウィンドウシステムが実行できるように設定されているマシンをさします。
'X 端末' の設定は、機能の段階に応じ、完全なディスクレス端末から高機 能な X ワークステーションまで、いろいろあります。
先に進む前に、これ以上は、この文書内で使用している用語の説明はしませ ん。X について話す時、何のために何が機能を提供しているのかなどの、か なり多くの混乱があります。これは、ネットワーク上の X 端末に、セッショ ンを分散させようとすると、特に混乱します。文書内で使う用語を以下に示 します。
これは、ディスクを持たないマシンで、EPROM (もしくは似たようなも の) からブートし、ネットワーク接続したサーバを利用します。ネット ワーク設定、オペレーティングシステム、システム設定、そして、すべ てのアプリケーションをサーバから入手することを意味します。いった んブートしてしまえば、これは 'ダム X 端末' (下記参照) と同じにな ります。一般的に、この設定は、次に示すブートのためのネットワーク プロトコルの組合せが使われます - BOOTP, DHCP, TFTP など。ディス クレスクライアントの構築の方法の詳細の参考となる情報が、Section 7 にいくつかありますので参照してください。
これは、ローカルディスク内のオペレーティングシステムからブートす るマシンで、プログラム 'X サーバ' のみ起動され、他には何も起動 されません。何らかの形で、ログインプロンプトがマシン上に表示され、 ネットワーク上のどこかの 'アプリケーションサーバ' へユーザがログ インすることを可能にします。
これは、ダム X 端末と似たようなものですが、ローカルマシンにログ オンする選択肢が提供され、それ故に、必要であれば、独立型の (言い 換えればネットワーク接続性のいらない) ワークステーションになれる 能力があります。ほとんどのディストリビューションは、出荷状態で、 グラフィックログインプロンプトを伴う独立型 X ワークステーション として設定できます。
この文書の文脈において、X 端末で実行したいアプリケーション (X ク ライアント) を提供するマシンを指すために 'アプリケーションサーバ' という用語を使用します。これは、エディタやブラウザから 'ウィンド ウマネージャ' それ自身まで、すべてのものを含みます。
これは、物理的なコンソール (ディスプレイ、キーボード、マウスなど) を伴うマシンのディスプレイを管理するプログラムです。それは、グラ フィックカード、キーボード、マウスの 'ドライバ' の組合せと考える こともできます。 これは、X クライアントへのサービスとしての機能を提供します (それ 故に 'サーバ' と呼ばれます)。詳細については、Section 7 にある X User Howto を参照してください。
これは、入力 (キーボードとマウス) と出力 (ディスプレイ) を提供す る X サーバの使用が必要なアプリケーションです。X クライアントは、 X サーバのサービスなしでは、出力が行えません。X サーバは、ローカ ル (同じマシン上) か、ネットワークのどこででも実行できます。
上記の概要のように、X ワークステーションは、ダム X 端末とアプリケー ションサーバから成り立ち、同一マシン上でそれらを実行するものと考える ことができます。
この文書は、上記の様々なアーキテクチャの選択肢を考察し、どのように XDM を設定し、その役割をさせるか記述します。
XDM は、ユーザにログインプロンプトを提供し、その X セッションの開始 を受け持ちます。それは、ローカルセッション (すなわち X ワークステー ションへのログイン) もしくは、ディスクレスかダム X 端末から、ネット ワークを介したアプリケーションサーバへ、リモートマシン間のセッション を管理できます。
XDM は、2つの主要な操作モードがあります。
X サーバからの検索
XDM による X サーバの管理
XDM と現存する 'X サーバ' (物理的なスクリーン・キーボード・マウス などを持つマシン) との通信は、XDMCP (X Display Manager Control Protocol) を介し、行われます。
これは、X サーバが XDM を実行しているサーバの検索を送出することを 許可します。事実上、X サーバは 'ログイン待ちをしている人がいるので、 ログインプロンプトをください' と言います。この操作モードで、XDM は、 X サーバがたずねるまで、何もしません。
X サーバからの検索は、3つの方法があります。
Direct query - X サーバは、指定されたホストと通信し、サーバが そのディスプレイにログインプロンプトを出すことを要求します。
Broadcast - X サーバは、ネットワークにブロードキャストメッセー ジを送出し、最初にブロードキャストに応答した XDM を実行してい るサーバは、そのディスプレイにログインプロンプトを出します。
Indirect query - X サーバは指定されたホストと通信しますが、ネッ トワーク上で XDM を実行しているホストを知っている他のホストに たずねます。次に、指定されたホストはユーザがホストを選択するた めのリストを表示します。そして、選択したホストと通信を開始し、 その結果、選択されたホストはそのディスプレイにログインプロンプ トを表示します。
他にもいくつかの選択肢がありますが、それらは、この文書では扱いませ ん - 詳細については、Section 7 にある XDM と XDMCP の文書を参照してください。
X サーバを実行するマシン (たとえばディスクレスかダム X 端末) がい くつかあり、一つのアプリケーションサーバからログインプロンプトをす べてのマシンに与えることを意図するなら、自動的にそれぞれの X サー バへ接続し、それぞれのディスプレイへログインプロンプトを表示する設 定をアプリケーションサーバ上の XDM にすることで可能です。
この操作モードにおいて、XDM は、X サーバ自身からの検索を待つことな く、記載された X サーバに対し、積極的にログインプロンプトを '押し 出します'。
このケースでは、XDM が接続し、そのログインプロンプトを表示すべきそ れぞれのマシン (必要なら、そのローカルディスプレイも含む) が設定ファ イル 'Xservers' に記入されています。
設定の中にリモート X サーバを記入しない時の設定は、X ワークステー ションのために使用される標準的な設定で、ユーザが使っているローカル マシンへグラフィックログインを表示します。前に述べたように、ほとん どのディストリビューションはローカルグラフィカルログインプロンプト をユーザに表示するために、出荷状態でこの設定を行っています。
注意 - XDM は、X サーバに接続が許可されなければならないという問題 があります - なので、X サーバ上のアクセスコントロールは適切に設定 しなければなりません。