ディスプレイマネージャに kdm を使う
Vine のディスプレイマネージャは、デフォルトのデスクトップ環境(ウインドウマネージャ)が gnome なので、当然のことながら gdm が使用されています。
そこに KDE をインストールして使用しても、ディスプレイマネージャは gdm のままで、KDE のディスプレイマネージャである kdm には変更されないんですね。勿論この状態でも動作に大きな問題は無いわけですが、下記のような小さな問題も起きます。
- KDE 上でログアウト画面を表示させた時に、「現在のセッションを終了」のボタンしか表示されず、gnome のログアウト画面には存在する「コンピュータを停止」や「コンピュータを再起動」のボタンが無い。
- KDE のコントロールセンターのログインマネージャの設定内容が反映されない
私は上記のどちらのことも KDE を導入した当初からちょっと気になっていたので、ディスプレイマネージャを kdm に変更してみることにしました。
Vine では setdm というコマンドで簡単にディスプレイマネージャを変更することが出来るんですね。(実行には root 権限が必要)
# /usr/sbin/setdm 使い方: setdm <ディスプレイマネージャ名> <ディスプレイマネージャ名>... xdm : X ディスプレイマネージャ kdm : KDE ディスプレイマネージャ gdm : GNOME ディスプレイマネージャ ディスプレイマネージャを選択してください。 1) exit 2) xdm 3) kdm 4) gdm 番号を入力>
ここで 3) を選択すればディスプレイマネージャが kdm に変更され、システムがリブートします。リブート後のログイン画面は、KDE のそれに変わっています。また、ログアウト画面には、「コンピュータを停止」や「コンピュータを再起動」のボタンが表示されるようになりました。
と、ここまでは良かったんですが、新たに次の 4 つの問題が発生してしまいました。
- システムのシャットダウン時に、自動で電源が切れなくなった
- KDE 起動時にサウンド関係のエラーが出るようになった
- 画面の解像度がちょっと変?
- root でログイン出来なくなった
まず 1. ですが、これは KDE のコントロールパネルから、[システム管理] → [ログインマネージャ] → [シャットダウン] で、「コマンド」の Halt: の内容を、/sbin/halt から /sbin/poweroff へと変更することで解決しました。
次に 2. ですが、出現するエラーは次のようなものでした。
Sound server informational message: Error while initializing the sound driver: device /dev/dsp can't be opened (Permission denied) The sound server will continue, using the null output device.
何やら /dev/dsp へのアクセス権限が無いと言われているようなんで、/dev/dsp のパーミッションを 600 から 777 に変更してから再起動してみたのですが、再起動後に何故かパーミッションが 600 に戻っていてやはりエラーが出ます。
行き詰まってしまって色々と検索したところ、/etc/security/console.perms というファイルを下記のように修正することで解決できることが分りました。
52行目付近の <console> 0600 <sound> 0600 root を、 <console> 0666 <sound> 0666 root に変更する。
次に 3. なんですが、ここで言っている "解像度" とは 1024 x 768 などの画面の解像度の話では無くて、dpi の方の解像度の話です。Windows の場合だと、標準で 96dpi に設定されていますよね。Vine ではデフォルトだと 91dpi という、なんか中途半端な値に設定されているようです。ちなみに現在の解像度は、下記のようにして知ることが出来ます。
$ xdpyinfo | grep resolution
で、ディスプレイマネージャを kdm に変えてから、起動の度に解像度が微妙に変化しているようなんですよね。ある時は 75dpi になったり、またある時は 91dpi に戻ったりとか。gdm の時にはそんなことは無かったんですけどね。
これではちょっと具合が悪いので、/etc/kde/kdm/kdmrc という設定ファイルの中で、下記のように明示的に解像度を指定することによってこの問題を回避しました。
60行目付近、
ServerCmd=/usr/X11R6/bin/X
の行に、
ServerCmd=/usr/X11R6/bin/X -dpi 96
のように、解像度をオプション指定する。
最後に 4. なんですが、これも 3. と同じ /etc/kde/kdm/kdmrc を下記のように修正することで解決しました。
16行目付近、
AllowRootLogin=false
となっているのを、
AllowRootLogin=true
に変更する。
ふ〜〜〜、ちかれたび〜〜〜
コメント