# KDE ディスプレイ マネージャ (KDM)

Steffen
Hansen

    stefh@dit.ou.dk

バージョン 0.5-1, 1998年7月9日

この文書は KDE ディスプレイ マネージャ について記述されています。

KDM ハンドブック

KDE
kdm
xdm
display manager

## はじめに

KDE ディスプレイ マネージャは、xdm こと X ディスプレイ マネージャに代わり 「いつでも気軽に」使えるだけでなく、ちょっとしたユーティリティもついていま す。kdmdesktop で見映えのよい背景を描けます。xdm と比較して、kdm は以下のよ うないくつかの点ですぐれています:

- kdm はユーザフレンドリな方式でセッション引数をサポートしています (xdm はいずれの引数を生成しようとも、ユーザに教えてくれません)。

- kdm には「シャットダウン」ボタン (NT のログイン ボックスによく似 たもの) も用意されています。

- kdm ではシステム上にいるユーザをグラフィカルに表示することもでき ます (アイデアは IRIX のログイン ボックスから拝借しました)。

- kdm は xdm より見た目がずっとよいです ;-)

- kdm はグラフィカル ユーザ インタフェイス (KDE コントロール セン ターの一部) で設定できます。

## kdm のインストール

### kdm のセットアップ

README ファイルをご覧ください! kdm のコンパイルの方法が説明してありま す。しかし、通常は自分で kdm をコンパイルする必要はありません。kdm は kdebase パッケージの一部であり、他のものとまとめてコンパイルされているからで す。その場合、$KDEDIR/bin ディレクトリにインストールされます。

注意: `make install` によって以前の `kdmrc` は上書きされます。

インストールの過程で新しいバージョンの `Xsetup&lowbar;0` ファイルがインストールされます。特にこれには

    kdmdesktop

という行が含まれており、これで見映えのよい背景 (画像や背景色) が表示で きます。通常このファイルは xdm の設定ディレクトリ、Redhat なら `/etc/X11/xdm/XSetup&lowbar;0` 、また S.u.S.E. なら `/usr/X11R6/lib/X11/xdm/XSetup&lowbar;0` にあります。 KDEDIR が /opt/kde でない場合には、kdmdesktop へのパスを変更する必要があるかもしれません。

PAM (Red Hat 5 および 5.1 では標準) を選択した場合、 /etc/pam.conf を調べて、以下の行を探してください

    # xdm authorization
    xdm    auth       required     pam_unix_auth.so
    xdm    auth       required     pam_unix_acct.so

これらの行がない場合は、追加してください。

さて、そろそろ kdm をテストしましょう。xdm が実行されないランレベルへ とシステムを変更する必要があります。それには `/etc/inittab` ファイルを編集します。以下のように書いてある行を探してください

    # default runlevel
    id:3:initdefault:

id: のうしろの値は標準のランレベルのコードであり、ディストリビューショ ンに強く依存していますが、常にきちんとした理由があります。もっとも一般的なデ ィストリビューションのグラフィカル ログイン (xdm) のランレベルは次のとおりです

- 5 は Red Hat 3.x, 4.x および 5.x, LST の場合

- 4 は Slackware の場合

- 3 は S.u.S.E. 4.x および 5.x の場合

このあと、任意のシェルで以下のコマンドを入力して kdm の起動を試みることができます:

    > kdm -nodaemon

kdm のログイン ボックスが表示されログインすることができれば、成功で す。ここでうまくいかない場合は、おもにランタイム リンカが Qt あるいは KDE の 共有ライブラリを見つけられないというときです。すべてがうまくいけば、xdm を kdm に置き換えることに着手できます。これもまた、ディストリビューションに依存しています。

- Redhat であれば、 `/etc/inittab` を編集します。「xdm」とい う文字列を探して、これを「kdm」(すべてのパスを含む) に置き換えてください。

- S.u.S.E. の場合、 `/sbin/init.d/xdm` ファイルを編集します。以下の第 1 行を追加してください

      . /etc/rc.config
      DISPLAYMANAGER=kdm
      export DISPLAYMANAGER

- 他のディストリビューションに関しては Redhat の方式ですが、絶対とは言い切れません。

私の知るかぎりでは、いずれのディストリビューションでも、/etc/inittab ファイル内のランレベルを (上記のとおり、あるいは inittab ファイル自体に記し てあるとおり、Redhat なら 5 に、S.u.S.E. なら 3 に) 変更する必要があります。 KDE ライブラリのバイナリ ディストリビューションをお持ちの場合、ライブラリが 想定している場所に kdm がインストールされているかを確認してください。あらた めて言いますが、これは通常 /opt/kde/bin です。inittab を変更したくない場合 は、代わりに「xdm」を「xdm.bak」へと名称変更し、xdm を kdm へのシンボリック リンクにしてください。kdm は、xdm の設定ファイルからディスプレイ マネージャ の全般的な設定を、&dollar;KDEDIR/share/config/kdmrc ファイルから kdm 独自の 設定をそれぞれ読み込みます。また、kdmdesktop は kdmrc を読み込みます。

### 他のウィンドウ マネージャと kdm の共存 (chooser)

さまざまなウィンドウ マネージャを使い分ける必要がある、あるいは単にた まには別のものを使ってみたいという場合は、kdm に組み込まれた chooser を利用 することができます。chooser を使えば、あらかじめ定義した一覧にあるウィンドウ マネージャを選択することができます。このためにはまた設定ファイルの変更が必要 になります。まず、パラメータを渡すために `Xsession` ファイル (Redhat の場合のパスは `/etc/X11/xdm/` 、また、S.u.S.E. であれば `/usr/X11R6/lib/X11/xdm/` を変更する必要があります。それには `'exec $startup'` という行を見つけ、これを `'exec &dollar;startup " &dollar;@"'` (括弧なしで) に変更します。そのあと /etc/xinitrc、あるいは ~/.xinitrc というファイルを作成/編集し、各ウィンドウ マネージャに対して機能 するようにします。下のスクリプトには起動させる 3 種類のウィンドウ マネージャ が記されています。好みに応じてさらに追加してもかまいません。忘れずに `.xinitrc` ファイルのコピーを `/etc/skel` に保存してください。こう すれば、以降に作成するユーザごとにこのファイルが自動的に生成されます。

    #!/bin/bash
    #
    # .xsession/.xinitrc
    #
    # choose a window manager
    #

    defaultwm=kde
    #set the window manager to $1 if it was supplied
    windowmgr=${1:-$defaultwm}

    #start the respective window managers
    case ${windowmgr} in
      kde|kwm|kdestart)
    	WINDOWMANAGER=startkde
    	;;
      fvwm|fvwm2)
    	WINDOWMANAGER=fvwm2
    	;;

      fvwm95)
    	WINDOWMANAGER=fvwm95
    	;;

      *)    WINDOWMANAGER=windowmgr   # default for unknown wm's

    esac

    #
    # load resources
    #

    if [ -f /usr/X11R6/lib/X11/Xmodmap ]; then
        xmodmap /usr/X11R6/lib/X11/Xmodmap
    fi

    if [ -f ~/.Xmodmap ]; then
        xmodmap ~/.Xmodmap
    fi

    if [ -f ~/.Xdefaults ]; then
        xrdb -merge ~/.Xdefaults
    fi

    if [ -f ~/.Xresources ]; then
        xrdb -merge ~/.Xresources
    fi
    #
    # finally start the window manager
    #
    exec $WINDOWMANAGER

## kdm の設定

kdm を設定するためのグラフィカル ツールが存在します。これは「K」/「設 定」/「アプリケーション」メニューの中にあります。このツールを使えば kdm 独自 のオプション (kdmrc に保存されています) を設定することが可能ですが、それでも なお、kdm は xdm とまったく同様にセットアップする必要があります。したがっ て、引き続きお読みください。

kdm 独自のオプションは 「&dollar;KDEDIR/share/config/kdmrc」ファイルを 編集して設定します。kdmrc には以下の 3 つのセクションがあります:

### KDM

このセクションのキーは以下のとおりです

    StdFont
    FailFont
    GreetFont
    GreetString
    SessionTypes
    LogoPixmap
    ShutdownButton
    Shutdown
    Restart
    UserView
    Users
    NoUsers
    SortUsers
    GUIStyle

以下は各キーの簡単な説明です:

*Font

  はフォントを表す次のような形式の文字列です: Courier,12,5,iso-8859-1,50,0.

GreetString

  kdm ログイン ウィンドウのタイトルです。

SessionTypes

  は「;」で区切ったセッション引数の一覧です。標準設定では `SessionTypes=kde;failsafe` です。上の例では、さらに fvwm2 と fvwm95というウィンドウ マネージャを使用しています。

LogoPixmap

  このロゴは気に入らなければ変更してください。

ShutdownButton、 Shutdown、および Restart

  ShutdownButton は、いつ シャットダウン ボタンを表示するのかを制御するもので、 `All`、 `None`、 `RootOnly`、および `ConsoleOnly` のうちいずれかに設定できます。 Shutdown 、および Restart はシャットダウン/再起動にともなって実行されるコマンドです。 標準設定は `/sbin/halt`、および `/sbin/reboot` です。 All、および None の意味は文字どおりですが、ConsoleOnly を選択すると、 リモート シャットダウンができなくなります。

UserView

  これを「1」に設定しておくと、kdm ウィンドウ内にユーザがグラフィカルに表示されます。

Users

  はグラフィカル表示させるユーザを「;」で区切った一覧です。 `UserView` が 1 で `Users` エントリがない場合、 kdm はパスワード ファイル内のユーザを探します。表示されるユーザ情報は、本名のほか、ログイ ン名、ホーム ディレクトリ、および標準設定のシェルです - それ以外は省略されます。kdm は &dollar;KDEDIR/share/apps/kdm/pics/users/ を調べ、各ユーザのアイコンを探します。 johndoe.xpm というアイコンがあれば、kdm はこれを使って johndoe というユーザを表示します。なければ default.xpm を使います。したがっ て、システム上に各ユーザの小さな画像を用意しているなら、それを &dollar;KDEDIR/share/apps/kdm/pics/users/ 内に置いて、kdm でログインを存分にご堪能ください ;-) 注意: kdm は大きさの異なるアイコンを扱うことができますが、あ まりに大きさが違うアイコンを同時に使うのはちょっとかっこわるいですね。

NoUsers

  は表示させないユーザ名を「;」で区切った一覧です。これを使って、 `sync` や `shutdown` のような「偽ユーザ」をユーザ表示から排除します。

SortUsers

  これが「0」に設定されていると、ユーザの一覧は読み込ま れた順に表示されます。標準設定では、ユーザはソート結果の順に表示されます。

GUIStyle

  `Motif` 、あるいは `Windows` のいずれかになります。

### KDMDESKTOP

このセクションでは背景を制御しています。キーは次のとおりです:

    BackgroundPicture
    BackgroundColor1
    BackgroundColor2
    BackgroundPictureMode

以下は各キーの簡単な説明です:

BackgroundPicture

  is the path to an image.

BackgroundColor&lsqb;1&verbar;2&rsqb;

  are named colors for solid and blended background.

BackgroundPictureMode

  can contain one of the following options:

  `None &verbar; Tile &verbar; Scale &verbar; Center &verbar; TopLeft &verbar; TopRight &verbar; BottomLeft &verbar; BottomRight &verbar; Fancy`

  `Fancy` background にすればきれいですが、 とても 重くなるので、注意してください。

### Locale

このセクションにはエントリがひとつしかないはずです。

Language

  は kdm で使用する言語を表しています。これは KDE とは別個に変更することができます。 値は従来同様、en/de/fr/da などです。

## 法的事項

kdm は xdm をもとにしているので、著作権はどうなるのでしょうか? kdm 0.1 の作者は Matthias Ettrich です。 それ以降のバージョンはすべて Steffen Hansen `stefh@dit.ou.dk` によるものです。

kdm はフリー ソフトウェアです。このライセンスがどうなるのか、正確なことはわかりません。 xdm に由来するコードが多く含まれているためです。 とにかく言っておくべきは次のことです:

kdm には Qt ライブラリが必要ですが、これの著作権は Troll Tech AS が有 しています。配布自由なプログラムは一般にフリーの Qt を使用しているのかもしれ ませんが、詳細については README.QT ファイルをご覧ください。私の名前が記され ているかぎり、だれでも kdm を改変したり、改変したものを再配布してもかまいません。

ところで: kdm は、現状のまま提供されるものであり、意匠、市場性、および 特定目的に対する適合性に関する保証を含むいかなる種類の保証をもともなうもので はありません。

当ドキュメンテーションは Gregor Zumstein`zumstein@ssd.ethz.ch` により拡張されました。 最終更新日 1998年7月9日