# Display Manager (日本語)

関連記事

- デスクトップ環境
- ウィンドウマネージャ
- ログイン時に X を起動する

ディスプレイマネージャ、もしくはログインマネージャは、起動の最後に標準のシェルにかわって表示されるグラフィカルインターフェースです。ウィンドウマネージャとデスクトップ環境の数が多くあるように、様々な種類のディスプレイマネージャがあります。さらに、それぞれのマネージャをカスタマイズしたりテーマを選択したりすることが可能です。

## ディスプレイマネージャ一覧

### コンソール

- CDM — 非常に小さい、しかし機能がととのったログインマネージャ、bash によって実装

  https://github.com/ghost1227/cdm || cdm-git

- Console TDM — bash だけで書かれた xorg-xinit の拡張。

  http://code.google.com/p/t-display-manager/ || console-tdm

### グラフィカル

- GDM — GNOME のディスプレイマネージャ

  http://projects.gnome.org/gdm/ || gdm

- KDM — KDE のディスプレイマネージャ

  http://www.kde.org/ || kdebase-workspace

- LightDM — クロスデスクトップのディスプレイマネージャ、様々なツールキットを使って書かれたフロントエンドを使用できます。

  http://www.freedesktop.org/wiki/Software/LightDM || lightdm

- LXDM — LXDE のディスプレイマネージャ。LXDE とは別個に使うことも可能。

  http://sourceforge.net/projects/lxdm/ || lxdm

- MDM — GDM 2 のフォーク

  https://github.com/linuxmint/mdm || mdm-display-manager

- Qingy — とても軽くて細かく設定ができる X Windows 独立系グラフィカルログイン (DirectFB を使用)

  http://qingy.sourceforge.net/ || qingy

- SDDM — QML ベースのディスプレイマネージャ

  https://github.com/sddm/sddm || sddm, sddm-qt5

- SLiM — 軽量でエレガントなグラフィカルログインを提供

  http://slim.berlios.de/ || slim

- XDM — XDMCP をサポートした　X ディスプレイマネージャ、ホストが選べる

  http://www.x.org/archive/X11R7.5/doc/man/man1/xdm.1.html || xorg-xdm

## ディスプレイマネージャをロードする

グラフィカルログインを有効にするには、好きなディスプレイマネージャのデーモンを使って下さい (例: KDM)。

    # systemctl enable kdm

これだけで動くはずですが、動かない場合、手動で `default.target` を設定するか、古いインストールを使います:

    $ ls -l /etc/systemd/system/default.target

    /etc/systemd/system/default.target -> /usr/lib/systemd/system/graphical.target

シンボリックリンクを削除すれば systemd は標準の `default.target` (つまり `graphical.target`) を使うようになります。

    # rm /etc/systemd/system/default.target

kdm を有効にした後、シンボリックリンク "display-manager.service" が `/etc/systemd/system/` に設定されるはずです:

    $ ls -l /etc/systemd/system/display-manager.service

    /etc/systemd/system/display-manager.service -> /usr/lib/systemd/system/kdm.service

### systemd-logind を使う

ユーザーセッションの状態を確認するには `loginctl` を使います。サスペンドや外部デバイスのマウントなどの全ての polkit アクションはそのまま動きます。

    $ loginctl show-session $XDG_SESSION_ID

## Tips and tricks

### セッションリスト

多くのディスプレイマネージャは `/usr/share/xsessions/` ディレクトリから利用できるセッションを読み込みます。このディレクトリには DM/WM のための標準の デスクトップエントリファイル が入っています。

ディスプレイマネージャのセッションリストにエントリを追加・削除するには、`/usr/share/xsessions/` にある .desktop ファイルを必要に応じて作成・削除してください。典型的な .desktop ファイルは以下のようになります:

    [Desktop Entry]
    Encoding=UTF-8
    Name=Openbox
    Comment=Log in using the Openbox window manager (without a session manager)
    Exec=/usr/bin/openbox-session
    TryExec=/usr/bin/openbox-session
    Icon=openbox.png
    Type=XSession

### 自動起動

ほとんどのディスプレイマネージャは `/etc/xprofile`, `~/.xprofile`, `/etc/X11/xinit/xinitrc.d/` を実行します。詳しくは xprofile を見て下さい。

## 既知の問題

### systemd との非互換性

影響がある DM: MDM, SDDM, SLiM

いくつかのディスプレイマネージャは PAM セッションのプロセスを再利用するため systemd と完全な互換性がありません。そのため二回目のログアウトで様々な問題が発生します:

- NetworkManager アプレットが動かない。
- PulseAudio のボリュームが調整できない。
- 他のユーザーで GNOME にログインできない。

詳しくは以下のバグレポートを見て下さい:

- MDM: [1]
- SDDM: [2] (git master で修正)
- SLiM: [3] [4]

Category:

- Display managers (日本語)