「ディスプレイマネージャ」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(同期)
5行目: 5行目:
 
[[en:Display manager]]
 
[[en:Display manager]]
 
[[es:Display manager]]
 
[[es:Display manager]]
  +
[[fa:Display manager]]
 
[[fr:Gestionnaire de connexions]]
 
[[fr:Gestionnaire de connexions]]
 
[[he:Display manager]]
 
[[he:Display manager]]
26行目: 27行目:
 
=== コンソール ===
 
=== コンソール ===
 
* {{App|[[CDM]]|非常に小さい、しかし機能がととのったログインマネージャ、bash によって実装|https://github.com/ghost1227/cdm|{{AUR|cdm-git}}}}
 
* {{App|[[CDM]]|非常に小さい、しかし機能がととのったログインマネージャ、bash によって実装|https://github.com/ghost1227/cdm|{{AUR|cdm-git}}}}
* {{App|[[Console TDM]]|bash だけで書かれた xorg-xinit の拡張。|http://code.google.com/p/t-display-manager/|{{AUR|console-tdm}}}}
+
* {{App|[[Console TDM]]|bash だけで書かれた xorg-xinit の拡張。|https://github.com/dopsi/console-tdm|{{AUR|console-tdm}}}}
 
* {{App|[[nodm]]|自動ログイン用の無駄のないディスプレイマネージャ。|http://enricozini.org/sw/nodm/|{{Pkg|nodm}}}}
 
* {{App|[[nodm]]|自動ログイン用の無駄のないディスプレイマネージャ。|http://enricozini.org/sw/nodm/|{{Pkg|nodm}}}}
   
 
=== グラフィカル ===
 
=== グラフィカル ===
 
* {{App|[[Enlightenment|Entrance]]|EFL ベースのディスプレイマネージャ、実験段階。|http://enlightenment.org/|{{AUR|entrance-git}}}}
 
* {{App|[[Enlightenment|Entrance]]|EFL ベースのディスプレイマネージャ、実験段階。|http://enlightenment.org/|{{AUR|entrance-git}}}}
* {{App|[[GDM]]|[[GNOME]] のディスプレイマネージャ|https://wiki.gnome.org/Projects/GDM|{{Pkg|gdm}}}}
+
* {{App|[[GDM]]|[[GNOME]] のディスプレイマネージャ|https://wiki.gnome.org/Projects/GDM|{{Pkg|gdm}}}}
* {{App|[[KDM]]|[[KDE]] のディスプレイマネージャ|http://www.kde.org/|{{Pkg|kdebase-workspace}}}}
+
* {{App|[[KDM]]|[[KDE]] のディスプレイマネージャ (開発終了)。|http://www.kde.org/|{{AUR|kdebase-workspace}}}}
 
* {{App|[[LightDM]]|クロスデスクトップのディスプレイマネージャ、様々なツールキットを使って書かれたフロントエンドを使用できます。|http://www.freedesktop.org/wiki/Software/LightDM|{{Pkg|lightdm}}}}
 
* {{App|[[LightDM]]|クロスデスクトップのディスプレイマネージャ、様々なツールキットを使って書かれたフロントエンドを使用できます。|http://www.freedesktop.org/wiki/Software/LightDM|{{Pkg|lightdm}}}}
 
* {{App|[[LXDM]]|[[LXDE]] のディスプレイマネージャ。LXDE とは別個に使うことも可能。|http://sourceforge.net/projects/lxdm/|{{Pkg|lxdm}}}}
 
* {{App|[[LXDM]]|[[LXDE]] のディスプレイマネージャ。LXDE とは別個に使うことも可能。|http://sourceforge.net/projects/lxdm/|{{Pkg|lxdm}}}}
* {{App|MDM|GDM 2 のフォーク|https://github.com/linuxmint/mdm|{{AUR|mdm-display-manager}}}}
+
* {{App|MDM|GDM 2 のフォーク|https://github.com/linuxmint/mdm|{{AUR|mdm-display-manager}}}}
  +
* {{App|[[SDDM]]|QML ベースのディスプレイマネージャ (KDM の後継)。Plasma 5 や LXQt の推奨ディスプレイマネージャ。|https://github.com/sddm/sddm|{{Pkg|sddm}}, {{AUR|sddm-qt5}}}}
* {{App|[[Qingy]]|とても軽くて細かく設定ができる X Windows 独立系グラフィカルログイン (DirectFB を使用)|http://qingy.sourceforge.net/|{{AUR|qingy}}}}
 
* {{App|[[SDDM]]|QML ベースのデスプレマネージャ|https://github.com/sddm/sddm|{{Pkg|sddm}}, {{AUR|sddm-qt5}}}}
+
* {{App|[[SLiM]]|軽量でエレガントなグラフカルログンを提供 (開発終了)。|http://slim.berlios.de/|{{Pkg|slim}}}}
* {{App|[[SLiM]]|軽量でエレガンなグラフカルログンを提供|http://slim.berlios.de/|{{Pkg|slim}}}}
+
* {{App|[[XDM]]|XDMCP をサポーした X デスプレマネージャ、ホストが選べる。|http://www.x.org/archive/X11R7.5/doc/man/man1/xdm.1.html|{{Pkg|xorg-xdm}}}}
* {{App|[[XDM]]|XDMCP をサポートした X ディスプレイマネージャ、ホストが選べる|http://www.x.org/archive/X11R7.5/doc/man/man1/xdm.1.html|{{Pkg|xorg-xdm}}}}
 
   
 
==ディスプレイマネージャをロードする==
 
==ディスプレイマネージャをロードする==
   
グラフィカルログインを有効にするには、好きな''ディスプレイマネージャ''のデーモンを使って下さい (例: [[KDM]])。
+
グラフィカルログインを有効にするには、好きな''ディスプレイマネージャ''のデーモンを使って下さい (例: [[SDDM]])。
   
# systemctl enable kdm
+
# systemctl enable sddm
   
 
これだけで動くはずですが、動かない場合、手動で {{ic|default.target}} を設定するか、古いインストールを使います:
 
これだけで動くはずですが、動かない場合、手動で {{ic|default.target}} を設定するか、古いインストールを使います:
56行目: 56行目:
 
# rm /etc/systemd/system/default.target
 
# rm /etc/systemd/system/default.target
   
kdm を有効にした後、シンボリックリンク "display-manager.service" が {{ic|/etc/systemd/system/}} に設定されるはずです:
+
SDDM を有効にした後、シンボリックリンク "display-manager.service" が {{ic|/etc/systemd/system/}} に設定されるはずです:
   
 
{{hc|$ ls -l /etc/systemd/system/display-manager.service|
 
{{hc|$ ls -l /etc/systemd/system/display-manager.service|
[...] /etc/systemd/system/display-manager.service -> /usr/lib/systemd/system/kdm.service}}
+
[...] /etc/systemd/system/display-manager.service -> /usr/lib/systemd/system/sddm.service}}
   
 
=== systemd-logind を使う ===
 
=== systemd-logind を使う ===
67行目: 67行目:
 
$ loginctl show-session $XDG_SESSION_ID
 
$ loginctl show-session $XDG_SESSION_ID
   
== Tips and tricks ==
+
== セッション設定 ==
 
===セッションとして ~/.xinitrc を実行===
 
{{AUR|xinit-xsession}} をインストールすることで {{ic|.xinitrc}} をセッションとして実行することができるようになります。
 
 
=== セッションリスト ===
 
   
 
多くのディスプレイマネージャは {{ic|/usr/share/xsessions/}} ディレクトリから利用できるセッションを読み込みます。このディレクトリには DM/WM のための標準の [http://standards.freedesktop.org/desktop-entry-spec/latest/ デスクトップエントリファイル] が入っています。
 
多くのディスプレイマネージャは {{ic|/usr/share/xsessions/}} ディレクトリから利用できるセッションを読み込みます。このディレクトリには DM/WM のための標準の [http://standards.freedesktop.org/desktop-entry-spec/latest/ デスクトップエントリファイル] が入っています。
86行目: 81行目:
 
Icon=openbox.png
 
Icon=openbox.png
 
Type=XSession
 
Type=XSession
  +
  +
===セッションとして ~/.xinitrc を実行===
  +
{{AUR|xinit-xsession}} をインストールすることで {{ic|.xinitrc}} をセッションとして実行することができるようになります。
   
 
=== ウィンドウマネージャを使わずにアプリケーションを起動 ===
 
=== ウィンドウマネージャを使わずにアプリケーションを起動 ===
104行目: 102行目:
   
 
[[xinitrc#ウィンドウマネージャを使わずにアプリケーションを起動]]も参照。
 
[[xinitrc#ウィンドウマネージャを使わずにアプリケーションを起動]]も参照。
  +
  +
== Tips and tricks ==
   
 
=== 自動起動 ===
 
=== 自動起動 ===
126行目: 126行目:
 
''影響がある DM: Entrance, MDM''
 
''影響がある DM: Entrance, MDM''
   
いくつかのディスプレイマネージャは PAM セッションのプロセスを再利用するため systemd と完全な互換性がありません。そのため二回目のログアウトで様々な問題が発生します:
+
いくつかのディスプレイマネージャは [[PAM]] セッションのプロセスを再利用するため systemd と完全な互換性がありません。そのため二回目のログアウトで様々な問題が発生します:
 
* NetworkManager アプレットが動かない。
 
* NetworkManager アプレットが動かない。
 
* PulseAudio のボリュームが調整できない。
 
* PulseAudio のボリュームが調整できない。

2016年5月29日 (日) 19:39時点における版

関連記事

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

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

コンソール

  • CDM — 非常に小さい、しかし機能がととのったログインマネージャ、bash によって実装
https://github.com/ghost1227/cdm || cdm-gitAUR
  • Console TDM — bash だけで書かれた xorg-xinit の拡張。
https://github.com/dopsi/console-tdm || console-tdmAUR
  • nodm — 自動ログイン用の無駄のないディスプレイマネージャ。
http://enricozini.org/sw/nodm/ || nodm

グラフィカル

  • Entrance — EFL ベースのディスプレイマネージャ、実験段階。
http://enlightenment.org/ || entrance-gitAUR
  • GDMGNOME のディスプレイマネージャ。
https://wiki.gnome.org/Projects/GDM || gdm
  • KDMKDE のディスプレイマネージャ (開発終了)。
http://www.kde.org/ || kdebase-workspaceAUR
  • LightDM — クロスデスクトップのディスプレイマネージャ、様々なツールキットを使って書かれたフロントエンドを使用できます。
http://www.freedesktop.org/wiki/Software/LightDM || lightdm
  • LXDMLXDE のディスプレイマネージャ。LXDE とは別個に使うことも可能。
http://sourceforge.net/projects/lxdm/ || lxdm
  • MDM — GDM 2 のフォーク。
https://github.com/linuxmint/mdm || mdm-display-managerAUR
  • SDDM — QML ベースのディスプレイマネージャ (KDM の後継)。Plasma 5 や LXQt の推奨ディスプレイマネージャ。
https://github.com/sddm/sddm || sddm, sddm-qt5AUR
  • SLiM — 軽量でエレガントなグラフィカルログインを提供 (開発終了)。
http://slim.berlios.de/ || slim
  • XDM — XDMCP をサポートした X ディスプレイマネージャ、ホストが選べる。
http://www.x.org/archive/X11R7.5/doc/man/man1/xdm.1.html || xorg-xdm

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

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

# systemctl enable sddm

これだけで動くはずですが、動かない場合、手動で 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

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

$ ls -l /etc/systemd/system/display-manager.service
[...] /etc/systemd/system/display-manager.service -> /usr/lib/systemd/system/sddm.service

systemd-logind を使う

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

$ loginctl show-session $XDG_SESSION_ID

セッション設定

多くのディスプレイマネージャは /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

セッションとして ~/.xinitrc を実行

xinit-xsessionAUR をインストールすることで .xinitrc をセッションとして実行することができるようになります。

ウィンドウマネージャを使わずにアプリケーションを起動

ウィンドウ装飾やデスクトップ、ウィンドウ管理を省いて、アプリケーションを起動することもできます。例えば google-chromeAUR を起動するには、以下のように /usr/share/xsessions/web-browser.desktop ファイルを作成します:

[Desktop Entry]
Encoding=UTF-8
Name=Web Browser
Comment=Use a web browser as your session
Exec=/usr/bin/google-chrome --auto-launch-at-startup
TryExec=/usr/bin/google-chrome --auto-launch-at-startup
Icon=google-chrome

この場合、ログイン時に、Exec で設定したアプリケーションがすぐに起動します。アプリケーションを閉じると、ログインマネージャに復帰します (DE/WM からログアウトしたときと同じ)。

この方法で起動することを、ほとんどのグラフィカルアプリケーションは想定していないため、上手く行くように設定が必要になるかもしれません (ウィンドウマネージャが存在しないため、ウィンドウの移動やサイズ変更はできず、ダイアログも使えません。アプリケーションの設定ファイルでウィンドウの配置を設定しておかなくてはならないでしょう)。

xinitrc#ウィンドウマネージャを使わずにアプリケーションを起動も参照。

Tips and tricks

自動起動

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

言語の設定

AccountsService を使用するディスプレイマネージャの場合、/var/lib/AccountsService/users/$USER を編集することでディスプレイマネージャのロケールを設定できます:

[User]
Language=your_locale

your_localeja_JP.UTF-8 といった値に置き換えて下さい。

ディスプレイマネージャを再起動することで変更が適用されます。

既知の問題

systemd との非互換性

影響がある DM: Entrance, MDM

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

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