次のページ 前のページ 目次へ

9. XFree86

9.1 XDM

XDMはグラフィカルターミナルにログインするのによく使われる方法です。 一見するとloginのように感じられますが内部的には全く異なるものです。

/etc/X11/xdmディレクトリには、ログインそれぞれで実行される設定 ファイルがあります。Xstartup("Xstartup_0" はスクリーン0用)はユーザーがログインした後で実行されるコマンドが書かれて います(コマンドはrootとして実行されます)。

ユーザー用にセットされたパスは/etc/X11/xdm/xdm-configにあります。 そこには

DisplayManager*userPath: /usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games 
DisplayManager*systemPath: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/bin/X11

といった行があります。 これらはそれぞれ通常ユーザーとrootのデフォルトパスです。Xユーザーなら /usr/bin/X11にパスが通っていることはとても重要です。もしXユーザー が他のマシンにログインしてXクライアントアプリケーションを起動する場合、 /usr/bin/X11はXターミナルから直接参照されないパスなので /usr/bin/X11を入力しなくてはいけません。

Xstartupを走らせて、XDMは最終的なユーザー(final user)として /etc/X11/Xsessionを走らせます。ローカル設定は /etc/environmentにあり、もしこれがあればXsessionで使われます。 (Xsessionは/bin/shから実行されます。つまり/etc/environment はshファイルである必要があります)。これはsshとクラッシュします。 sshは、/etc/environmentVAR=VALUEフォームの行を含んでいる ファイルとするからです。

9.2 xterm -ls

デフォルトではX windowマネージャーのメニューから起動される全てのコマンドの パスはXDMから継承されています。違うものを使うなら正しくセットする必要があり ます。"通常の"パスを使ってターミナルエミュレータを起動するには、 特殊オプションを使います。xtermでは、シェルログイン初期化ファイルで指定され たパスでログインシェルを使うのに、-lsオプション(loginシェル)を使わ なければいけません。

訳注:xterm manページの-lsオプションの箇所を参照して下さい。

9.3 ウィンドウマネージャメニューとボタン

ウィンドウマネージャはXDMの環境を継承しています。ウィンドウマネージャに よって起動されるプログラムは全てウィンドウマネージャの環境を継承します。

ユーザーシェル環境はウィンドウマネージャのボタンやメニューから起動する プログラムに影響しません。例えばxterm -lsから実行したプログラムは ログインシェルの環境を使い、メニューから起動したプログラムは ウィンドウマネージャの環境を使います。


次のページ 前のページ 目次へ