FreeBSDで xdm を起動


 

xdm は X.Org が提供する ディスプレイマネージャ である。グラフィカルなログイン画面を表示し、ログイン後に X のセッションを開始する。ここでは、xdm のインストールと、システム起動時に xdm が動作するようにする設定を示す。

前提として、グラフィックスドライバと x11/xorg のインストールが済んでいること。

xdm のインストール

パッケージからインストールする場合は、root 権限で次のコマンドを実行する。

pkg install xdm

ports からインストールする場合は、root 権限で次のコマンドを実行する。

cd /usr/ports/x11/xdm
make install clean

一般ユーザが X を利用できるようにする設定

X サーバを利用するユーザは、video グループに所属している必要がある。root 権限で次のコマンドを実行する。username は、実際のユーザ名に置き換える。

pw groupmod video -m username

グループの変更は、そのユーザが次にログインしたときに有効になる。

xdm の自動起動の設定

起動方法は 2 通りある。どちらか一方だけを有効にする。両方を同時に有効にすると、1 つのディスプレイに対して xdm が二重に起動し、X サーバの起動に失敗する。

方法 1: rc.conf で有効にする

x11/xdm は rc スクリプト /usr/local/etc/rc.d/xdm を提供する。root 権限で次のコマンドを実行して、/etc/rc.conf に設定を追加する。

sysrc xdm_enable="YES"

再起動せずに動作を確認するときは、root 権限で次のコマンドを実行する。

service xdm start

xdm が使用する仮想端末を変更するときは、/etc/rc.conf に xdm_tty を設定する。既定では ttyv8 が使用される。

sysrc xdm_tty="ttyv8"

方法 2: /etc/ttys で有効にする

/etc/ttys の ttyv8 の行を次のように書き換え、5 番目のフィールドを off から on にする。

ttyv8   "/usr/local/bin/xdm -nodaemon"  xterm   on  secure

書き換えた設定を反映するために、root 権限で次のコマンドを実行する。init が /etc/ttys を読み直し、xdm が起動する。

kill -HUP 1

この方法では、ユーザがログアウトした後、init が xdm を再起動する。そのために、-nodaemon オプションを指定する。

xdm の設定ファイル

xdm の設定ファイルは /usr/local/etc/X11/xdm/ に置かれている。ログイン後に実行されるコマンドは Xsession、ログイン画面の外観は Xresources、X サーバの起動引数は Xservers で設定する。

xdm を停止する

rc.conf で有効にした場合は、root 権限で次のコマンドを実行して停止し、自動起動を無効にする。

service xdm stop
sysrc xdm_enable="NO"

/etc/ttys で有効にした場合は、ttyv8 の行の on を off に戻し、root 権限で次のコマンドを実行する。

kill -HUP 1