「LightDM」の版間の差分
(→任意の設定と調整: 同期) |
(→トラブルシューティング: 同期) |
||
370行目: | 370行目: | ||
== トラブルシューティング == |
== トラブルシューティング == |
||
+ | |||
− | 画面が点滅して起動時に lightdm が現れない問題が起こる場合は、lightdm の設定ファイルに greeter を正しく定義しているか確認してください。GTK greeter を定義している場合は、{{ic|xsessions-directory}} (デフォルト: {{ic|/usr/share/xsessions}}) が存在していて少なくとも一つは .desktop ファイルが含まれていることを確認してください。 |
||
+ | === 自動ログインが機能しない === |
||
+ | |||
+ | {{ic|/etc/lightdm/lightdm.conf}} 内の {{ic|1=autologin-user=}} に適切な値が設されていることを確認してください。末尾に空白があるとエラーが発生します。 |
||
+ | |||
+ | 自動ログインが失敗した時に画面に何も表示されない、あるいはログイン画面に即座に戻される場合、{{ic|1=logind-check-graphical=true}} を設定する必要があるかもしれません。 |
||
+ | |||
+ | 自動ログインの用途には {{AUR|lightdm-autologin-greeter-git}} をインストールすることもできます。 |
||
+ | |||
+ | === 現在の設定を見る === |
||
+ | |||
+ | 現在の設定を見るには、以下を実行してください: |
||
+ | |||
+ | $ lightdm --show-config |
||
+ | |||
+ | 現在の設定、及びそれらの設定が読み込まれた元の設定ファイルが表示されます。 |
||
+ | |||
+ | === LightDM が起動せず、画面が点滅する === |
||
+ | |||
+ | 起動時に画面が点滅し続け、LightDM が表示されない場合、LightDM の設定ファイルで greeter を正しく定義しているか確認してください。GTK greeter を適切に定義している場合は、{{ic|xsessions-directory}} (デフォルト: {{ic|/usr/share/xsessions}}) が存在していて少なくとも一つは .desktop ファイルが含まれていることを確認してください。 |
||
最後に使用したセッションが利用できなくなった時も同じ問題が lightdm の起動時に発生することがあります (例えば gnome を使った後 gnome-session パッケージを削除した場合): 一番簡単な回避策は削除したパッケージを一時的に戻すことです。もうひとつの解決策は: |
最後に使用したセッションが利用できなくなった時も同じ問題が lightdm の起動時に発生することがあります (例えば gnome を使った後 gnome-session パッケージを削除した場合): 一番簡単な回避策は削除したパッケージを一時的に戻すことです。もうひとつの解決策は: |
||
+ | |||
# dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.Accounts /org/freedesktop/Accounts/User1000 org.freedesktop.Accounts.User.SetXSession string:xfce |
# dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.Accounts /org/freedesktop/Accounts/User1000 org.freedesktop.Accounts.User.SetXSession string:xfce |
||
− | このコマンドはセッション "xfce" を user 1000 ユーザーのデフォルトとして設定します。 |
||
+ | この例は、セッション "xfce" をユーザー ID 1000 のユーザーのデフォルトとして設定します。 |
||
− | === 電源メニュー (再起動、電源オフなど) が使えない === |
||
− | lightdm-1:1.6.0-6 より前に lightdm をインストールしている場合、次のバグが原因かもしれません: {{Bug|36613}}。修正するには次を実行してください: |
||
− | # chown polkitd:root /usr/share/polkit-1/rules.d |
||
=== 間違ったロケールが表示される === |
=== 間違ったロケールが表示される === |
||
+ | |||
− | Lightdm でロケールが正しく表示されない場合はあなたが使用しているロケールを {{ic|/etc/environment}} に追加してください: |
||
+ | LightDM でロケールが正しく表示されない場合はあなたが使用しているロケールを {{ic|/etc/environment}} に追加してください: |
||
+ | |||
LANG=ja_JP.utf8 |
LANG=ja_JP.utf8 |
||
− | LightDM や greeter でシステムロケール以外の言語を使いたい場合、[[ |
+ | LightDM や greeter でシステムロケール以外の言語を使いたい場合、[[ドロップインファイル]]で {{ic|1=Environment=}} オプションを使用することで可能です。 |
− | === |
+ | === 起動後数分間反応しない === |
+ | |||
− | LightDM には [[Xresources]] ファイルがプリプロセッサによってロードされないという上流のバグが存在します [https://bugs.launchpad.net/lightdm/+bug/1084885]。実際面で、これは {{ic|#define}} で設定された変数が後で呼ばれた時に展開されないということを意味しています。urxvt でカスタムカラーのセットを使った時にピンクの画面になることでこれを確認できます。修正するには、{{ic|/etc/lightdm/Xsession}} を開いて次の行を探して下さい: |
||
+ | より多くのエントロピーが必要なのかもしれません。Haveged をインストールし、有効化してください。参照: https://github.com/canonical/lightdm/issues/17 |
||
− | xrdb -nocpp -merge "$file" |
||
− | 次のように変更してください: |
||
− | xrdb -merge "$file" |
||
− | これで Xresources が処理され変数が正しく展開されます。 |
||
=== GTK greeter でアイコンが表示されない === |
=== GTK greeter でアイコンが表示されない === |
||
+ | |||
{{Pkg|lightdm-gtk-greeter}} を greeter として使っていてプレースホルダ画像がアイコンとして表示される場合、正しいアイコンテーマとテーマを設定してください。次のファイルを確認してください: |
{{Pkg|lightdm-gtk-greeter}} を greeter として使っていてプレースホルダ画像がアイコンとして表示される場合、正しいアイコンテーマとテーマを設定してください。次のファイルを確認してください: |
||
+ | |||
− | {{hc|/etc/lightdm/lightdm-gtk-greeter.conf| |
||
+ | {{hc|/etc/lightdm/lightdm-gtk-greeter.conf|2= |
||
[greeter] |
[greeter] |
||
− | theme-name |
+ | theme-name=mate # /usr/share/themes/ 以下のディレクトリの名前 |
− | icon-theme-name |
+ | icon-theme-name=mate # /usr/share/icons/ 以下の完全なアイコンセットディレクトリの名前 |
}} |
}} |
||
408行目: | 426行目: | ||
マルチモニタを使っていると、LightDM が間違ったモニタに表示されることがあります (例: プライマリモニタが右側にある場合)。LightDM のログイン画面が特定のモニタで表示されるように指定するには、{{ic|/etc/lightdm/lightdm.conf}} を編集して ''display-setup-script'' パラメータを次のように変更してください: |
マルチモニタを使っていると、LightDM が間違ったモニタに表示されることがあります (例: プライマリモニタが右側にある場合)。LightDM のログイン画面が特定のモニタで表示されるように指定するには、{{ic|/etc/lightdm/lightdm.conf}} を編集して ''display-setup-script'' パラメータを次のように変更してください: |
||
+ | |||
{{hc|/etc/lightdm/lightdm.conf|2= |
{{hc|/etc/lightdm/lightdm.conf|2= |
||
− | display-setup-script=xrandr --output '' |
+ | display-setup-script=xrandr --output ''HDMI-1'' --primary |
}} |
}} |
||
− | ''HDMI1'' は実際のモニタの ID に置き換えてください、 |
+ | ''HDMI1'' は実際のモニタの ID に置き換えてください、'''xrandr''' コマンドの出力で確認できます。 |
+ | |||
+ | もしくは、GTK greeter を使用している場合、{{ic|/etc/lightdm/lightdm-gtk-greeter.conf}} を編集して以下のように ''active-monitor'' パラメータを追加することもできます: |
||
− | もしくは、GTK+ greeter を使用している場合、{{ic|/etc/lightdm/lightdm-gtk-greeter.conf}} を編集して以下のように ''active-monitor'' パラメータを追加することもできます: |
||
{{hc|/etc/lightdm/lightdm-gtk-greeter.conf|2= |
{{hc|/etc/lightdm/lightdm-gtk-greeter.conf|2= |
||
[greeter] |
[greeter] |
||
422行目: | 442行目: | ||
0 は適当なディスプレイの番号に置き換えてください。 |
0 は適当なディスプレイの番号に置き換えてください。 |
||
− | === LightDM が表示されない === |
+ | === LightDM が表示されない、または TTY 出力のみがモニタに表示される === |
システムの起動が速すぎて、グラフィックドライバーが読み込まれるよりも先に LightDM サービスが起動してしまうことがあります。このような場合、{{ic|lightdm.conf}} ファイルに以下の設定を追加してください: |
システムの起動が速すぎて、グラフィックドライバーが読み込まれるよりも先に LightDM サービスが起動してしまうことがあります。このような場合、{{ic|lightdm.conf}} ファイルに以下の設定を追加してください: |
||
+ | {{hc|/etc/lightdm/lightdm.conf|2= |
||
− | [LightDM] |
||
+ | [LightDM] |
||
− | logind-check-graphical=true |
||
+ | logind-check-graphical=true |
||
+ | }} |
||
+ | |||
+ | 上記の設定で LightDM はグラフィックデバイスの準備が完了するのを待ってから、greeter を生成する、またはセッションを自動起動します。 |
||
+ | |||
+ | しかし、'''新しいバージョンの LightDM では、これがデフォルトの設定になっています。'''その結果、一部のハードウェアでは、グラフィックドライバが適切に検出されず、LightDM が greeter を起動しない場合があります (ブートしてシステムが安定した後でも)。この場合、この設定を false に設定して、グラフィックドライバのチェックをせずに greeter を起動するように強制的してください。 |
||
+ | |||
+ | === Intel Graphics で LightDM の FPS が低い === |
||
+ | [[Intel graphics#AccelMethod]] を参照。 |
||
− | 上記の設定で LightDM はグラフィックデバイスの準備が完了するのを待ってから Greeter を生成してセッションを開始します。 |
||
=== Pulseaudio が自動的に起動しない === |
=== Pulseaudio が自動的に起動しない === |
||
− | [[PulseAudio#実行]]を |
+ | [[PulseAudio#実行]] を参照。 |
+ | === ホームディレクトリが暗号化されていると LightDM の表示に時間がかかる === |
||
− | === タッチパッドでタップしてクリックできない === |
||
+ | 一部の LightDM テーマは、ホームディレクトリ内のアバター画像ファイルにアクセスしようとします。ホームディレクトリが暗号化されている場合、LightDM はホームディレクトリにアクセスできず、フリーズします。以下のどちらかの方法により、これを防止できます: |
||
− | 設定によってはタップでクリックが機能しないことがあります。[[libinput]] を使用している場合、{{ic|/etc/lightdm/lightdm.conf}} を編集して以下のように ''greeter-setup-script'' オプションをセットして xinput によるタッチパッドのクリックを有効にしてください: |
||
+ | * [[#アバターを変更する]] で説明されているようにアバターを設定する |
||
− | {{hc|/etc/lightdm/lightdm.conf|2= |
||
+ | * {{Pkg|lightdm-gtk-greeter}} の場合のみ: {{Ic|/etc/lightdm/lightdm-gtk-greeter.conf}} で {{Ic|<nowiki>hide-user-image = true</nowiki>}} を設定する |
||
− | greeter-setup-script=xinput set-prop '''''device_number option_number setting_value''''' |
||
+ | |||
− | }} |
||
+ | === "[ OK ] Reached target Graphical Interface." で起動がストップする === |
||
+ | |||
+ | {{ic|/etc/nsswitch.conf}} を変更している場合、ユーザとグループの探索に失敗することがあります。これは、{{ic|/etc/nslcd.conf}} で {{ic|nss_initgroups_ignoreusers ALLLOCAL}} を設定せずに {{ic|nsswitch.conf}} のグループに {{ic|ldap}} が含まれている場合に起こります。 |
||
+ | |||
+ | === Greeter に重複した GNOME エントリがあると Wayland セッションが動作しない === |
||
+ | |||
+ | 一部の greeter (例: {{Pkg|lightdm-webkit2-greeter}}) は、2つのセッションが同一の名前を持つことをサポートしていません [https://github.com/CanonicalLtd/lightdm/issues/16]。重複したエントリがあるか確認するには: |
||
+ | |||
+ | $ ls -1 /usr/share/wayland-sessions /usr/share/xsessions |
||
+ | |||
+ | {{ic|/usr/share/xsessions}} 内の重複したエントリの名称を変更してください。例えば: |
||
+ | # mv /usr/share/xsessions/gnome.desktop /usr/share/xsessions/gnome.desktop.disabled |
||
− | {{ic|xinput}} を使用して入力デバイスのプロパティを設定する方法は [[Libinput#設定]]を参照してください。 |
||
− | === 初回ログイン時に必ずセ |
+ | === 初回ログイン時に必ずセクメンテーション違反が発生する === |
− | [[ネットワーク設定#ホスト |
+ | [[ネットワーク設定#ホスト名の設定]] にあるように、ホスト名を設定してください。{{Bug|47694}} も参照してください。 |
=== ログインの無限ループ === |
=== ログインの無限ループ === |
||
− | 正しいユーザ名とパスワードを入力しても画面が真っ暗になり、何度やってもログインに戻るというループに陥った場合、{{ic|rm ~/.Xauthority}} を実行する |
+ | 正しいユーザ名とパスワードを入力しても画面が真っ暗になり、何度やってもログインに戻るというループに陥った場合、{{ic|rm ~/.Xauthority}} を実行する (つまり、無限ループが発生しているユーザの問題のある {{ic|.Xauthority}} を削除する) と解決することがあります。 |
− | もう一つの理由は、"lightdm.conf" を一から作り直そうとして、 |
+ | もう一つの理由は、あなたが "lightdm.conf" を一から作り直そうとして、以下の行を入れ忘れたのかもしれません: |
session-wrapper=/etc/lightdm/Xsession |
session-wrapper=/etc/lightdm/Xsession |
||
− | + | この行がないと、LightDM は、Arch Linux には存在しない "lightdm-session" をセッションラッパーとして使おうとしてしまいます。 |
|
== 参照 == |
== 参照 == |
2023年10月7日 (土) 15:58時点における版
関連記事
LightDM はクロスデスクトップのディスプレイマネージャです。主な特徴は以下の通り:
- クロスデスクトップ - 様々なデスクトップ技術をサポート。
- 様々なディスプレイサーバーに対応 (X、Mir、Wayland ...)。
- 軽量 - メモリの使用量が少なくて高速に動作。
- ゲストセッションをサポート。
- リモートログインをサポート (着信 - XDMCP、VNC、発信 - XDMCP、PAM)。
- 充実したテストスイート。
- 軽量なコードベース。
LightDM の設計に関する詳細は ここ から見れます。
目次
- 1 インストール
- 2 LightDM を有効にする
- 3 コマンドラインツール
- 4 テスト
- 5 任意の設定と調整
- 5.1 X セッションラッパー
- 5.2 背景画像・色を変更する
- 5.3 アバターを変更する
- 5.4 Arch の 64x64 アイコンを使う
- 5.5 自動ログインを有効にする
- 5.6 インタラクティブなパスワードレスログインを有効化する
- 5.7 ゲストセッションを有効化する
- 5.8 システムユーザーとサービスユーザーを隠す
- 5.9 SLiM からの移行
- 5.10 ~/.xinitrc を使ってログイン
- 5.11 NumLock をデフォルトでオンにする
- 5.12 デフォルトセッション
- 5.13 ログインウィンドウの位置を変更
- 5.14 VNC サーバー
- 5.15 light-locker を使って画面をロック
- 5.16 マルチモニターのセットアップ
- 6 トラブルシューティング
- 6.1 自動ログインが機能しない
- 6.2 現在の設定を見る
- 6.3 LightDM が起動せず、画面が点滅する
- 6.4 間違ったロケールが表示される
- 6.5 起動後数分間反応しない
- 6.6 GTK greeter でアイコンが表示されない
- 6.7 ログインしようとすると LightDM がフリーズする
- 6.8 LightDM が間違ったモニタに表示される
- 6.9 LightDM が表示されない、または TTY 出力のみがモニタに表示される
- 6.10 Intel Graphics で LightDM の FPS が低い
- 6.11 Pulseaudio が自動的に起動しない
- 6.12 ホームディレクトリが暗号化されていると LightDM の表示に時間がかかる
- 6.13 "[ OK ] Reached target Graphical Interface." で起動がストップする
- 6.14 Greeter に重複した GNOME エントリがあると Wayland セッションが動作しない
- 6.15 初回ログイン時に必ずセクメンテーション違反が発生する
- 6.16 ログインの無限ループ
- 7 参照
インストール
Greeter
Greeter もインストールする必要があるでしょう。Greeter はユーザーにログイン情報の入力を求める GUI であり、セッションの選択なども行います。Greeter 無しで LightDM を使うことも可能ですが、自動ログインが設定されている場合に限ります。Greeter を使用する場合は、xorg-server をインストールし、さらに以下の greeter パッケージのどれかをインストールする必要があります。
公式リポジトリには以下の greeter が含まれています:
- lightdm-gtk-greeter: これはデフォルトの greeter であり、特に設定されていない場合、LightDM はこれを使用しようと試みます。
- lightdm-deepin-greeter (deepin-session-shell): Deepin プロジェクトの greeter。
- lightdm-pantheon-greeter: Elementary OS プロジェクトの greeter。
- lightdm-slick-greeter: lightdm-gtk-greeter よりも見た目を重視した GTK ベースの greeter。lightdm-unity-greeterAUR[リンク切れ: package not found] のフォークであり、Linux Mint ではデフォルトになっています。
- lightdm-webkit2-greeter: テーマに Webkit2 を使用する greeter。lightdm-webkit-greeter の後継。
- lightdm-webkit-theme-litarvan: モダンかつ完全な Webkit2 LightDM テーマ。
その他の greeter は AUR からインストールすることができます:
- lightdm-unity-greeterAUR[リンク切れ: package not found]: Unity で使用されている greeter。
- lightdm-mini-greeterAUR: 最小でカスタマイズ可能なシングルユーザ greeter。
- web-greeter-theme-shikaiAUR: LightDM の web-greeterAUR 用の美しいカスタマイズ可能な lightdm テーマ。
- lightdm-webkit-theme-aetherAUR: LightDM と lightdm-webkit2-greeter を使用する、洗練されたわかりやすい Arch Linuxテーマのログイン画面。
- lightdm-elephant-greeter-gitAUR: 小さくてシンプルな greeter。デフォルトで cage Wayland コンポジタを使用します。
- web-greeterAUR: テーマに PyQtWebEngine を使用するモダンで魅力的な greeter。lightdm-webkit2-greeter の後継。
LightDM の設定ファイルの [Seat:*]
セクションを変更することでデフォルトの greeter を設定することができます。例えば:
/etc/lightdm/lightdm.conf
[Seat:*] ... greeter-session=lightdm-yourgreeter-greeter ...
どの greeter が利用できるか確認できる方法としては、/usr/share/xgreeters
ディレクトリ内のファイルをリストアップするというものがあります。それぞれの .desktop ファイルは1つの利用可能な greeter を表します。以下の例では、lightdm-gtk-greeter
greeter と lightdm-webkit2-greeter
greeter が利用可能です:
$ ls -1 /usr/share/xgreeters/ lightdm-gtk-greeter.desktop lightdm-webkit2-greeter.desktop
LightDM を有効にする
LightDM をブート時に起動するには lightdm.service
を有効化してください。ディスプレイマネージャ#ディスプレイマネージャをロードする も参照。
コマンドラインツール
LightDM はコマンドラインツール dm-tool
を提供しています。これを使うことで現在のシートのロック、セッションの切り替えなどができます。'最小主義の'ウィンドウマネージャを使っている場合やテストに便利です。利用できるコマンドを表示するには、次を実行してください:
$ dm-tool --help
ユーザーの切り替え
LightDM の dm-tool コマンドを使って別々の tty に複数のユーザーをログインさせることができます。以下のコマンドは現在のセッションをロックするシグナルを送信して LightDM の greeter への切り替えを行って、新しいユーザーがログインできるようにします:
$ dm-tool switch-to-greeter
テスト
まず、xorg-server-xephyr をインストールしてください。
そして、LightDM を X アプリケーションとして実行してください:
$ lightdm --test-mode --debug
任意の設定と調整
LightDM は、設定ファイル /etc/lightdm/lightdm.conf
を編集することで設定することができます。
また、一部の greeter には独自の設定ファイルが存在しています。例えば:
lightdm-gtk-greeter: /etc/lightdm/lightdm-gtk-greeter.conf
(あるいは、lightdm-gtk-greeter-settings GUI を使用することもできます)。
lightdm-webkit2-greeter: /etc/lightdm/lightdm-webkit2-greeter.conf
X セッションラッパー
xinit から移行したユーザは、セッションがシェルから起動しないことに気づくでしょう。これは、シェルはセッションを起動する (そして、セッションはシェルの環境変数を継承する) のに対し、LightDM はセッションを起動するがシェルを source しないことが原因です。LightDM はラッパースクリプトを実行することでセッションを起動し、最後にグラフィカル環境を起動します。デフォルトでは、/etc/lightdm/Xsession
が実行されます。
環境変数
スクリプトは /etc/profile
、~/.profile
、/etc/xprofile
、そして ~/.xprofile
をこの順番で読み込みます。これらのファイルを source しないシェルを使用している場合は、ファイルを読み込む ~/.xprofile
を作成してもよいです。以下の例では、zsh がログインシェルです:
~/.xprofile
#!/bin/sh [ -f ~/.config/zsh/.zshenv ] && . ~/.config/zsh/.zshenv
セッションにおいて重要であるシェル変数 (GTK や QT のテーマ、GNUPG の場所、設定のオーバーライドなど) を定義している場合は、こうすることでログインシェルから起動せずにグラフィカル環境が環境変数にアクセスすることができるようになります。
キーマップ
スクリプトは /etc/X11/Xkbmap
と ~/.Xkbmap
で定義されている引数を使って Xkbmap を実行します。これらのファイルが存在しない場合、スクリプトは /etc/X11/Xmodmap
と ~/.Xmodmap
で定義されている引数を使って xmodmap を実行します。xkbmap を使用する場合、上記のファイルは cat を使ってパースされます。例:
~/.Xmodmap
-model pc105 -layout us,us,tr -variant ,dvorak,f -option grp:caps_toggle
それら以外の場合、セッションは X11 のシステムのデフォルトのキーマップを継承します。このキーマップは、xorg の設定ファイルを手動で編集するか、localectl set-x11-keymap
を使用することで定義することができます。Xorg/キーボード設定#キーボードレイアウトの設定 を参照。
lightdm-gtk-greeter で複数のキーボード配列
事前定義済みのキーボード配列の中から配列を切り替えられるようにするには、ドロップダウンメニューを有効化し、配列を設定してください。lightdm-gtk-greeter-settings GUI を使用するか、設定ファイルを直接編集してください:
/etc/lightdm/lightdm-gtk-greeter.conf
[greeter] indicators = ~host;~spacer;~clock;~spacer;~layout;~language;~session;~a11y;~power
複数の配列を設定するには localectl を使用してください。例えば、de とその "バリアント" である neo を設定し、後者をプライマリとするには:
# localectl --no-convert set-x11-keymap de,de pc105 neo,
末尾のコンマは2つめの de の空白のバリアントを意味していることに注意してください。
背景画像・色を変更する
背景には16進数のカラーコードか画像を設定することができます。一部の greeter は、ログイン画面による背景選択、ランダムな背景などのよりロバストな背景オプションを提供しています。
GTK greeter
lightdm-gtk-greeter-settings GUI を使って設定することができます。
Greeter 画面の壁紙をカスタマイズしたい場合は、/etc/lightdm/lightdm-gtk-greeter.conf
を編集して [greeter]
セクション内で background
変数を定義する必要があります。例:
/etc/lightdm/lightdm-gtk-greeter.conf
[greeter] background=/usr/share/pixmaps/black_and_white_photography-wallpaper-1920x1080.jpg
GTK3 テーマは [greeter]
セクション内の theme-name
変数で指定することができます。アイコンとカーソルのテーマも同じように設定できます。例:
/etc/lightdm/lightdm-gtk-greeter.conf
[greeter] theme-name = Tela icon-theme-name = Tela cursor-theme-name = Tela cursor-theme-size = 32 font-name = Cantarell 20
Webkit2 greeter
lightdm-webkit2-greeter では、背景画像をログイン画面で直接選択することができます。また、Material テーマを使用する場合は、起動するたびにランダムな画像を表示するオプションも提供されています。デフォルトでは、画像は /usr/share/backgrounds
から読み込まれます。lightdm-webkit2-greeter.conf
を編集することで背景画像を直接変更することができます。例えば:
/etc/lightdm/lightdm-webkit2-greeter.conf
[branding] background_images = /usr/share/backgrounds
Unity greeter
lightdm-unity-greeterAUR[リンク切れ: package not found] を使っている場合、/usr/share/glib-2.0/schemas/com.canonical.unity-greeter.gschema.xml
ファイルを編集して、次を実行してください:
# glib-compile-schemas /usr/share/glib-2.0/schemas/
このページを参照。
Slick Greeter
lightdm-settingsAUR GUI を使用してください。
アバターを変更する
まず、accountsservice パッケージがインストールされていることを確認し、その後、以下のようにセットアップしてください。username
の部分はユーザーのログイン名に置き換えてください。
- 96x96 の PNG 画像ファイルを使って
/var/lib/AccountsService/icons/username.png
ファイルを作成してください。その他の画像フォーマットも利用可能です (例えば JPEG)。 - あるいは、デフォルトの設定がすでにユーザーのホームディレクトリのパスを使用している場合は、画像ファイルを
/home/username/.face
として配置し、次の手順を飛ばしてください。 - アカウントの設定ファイル
/var/lib/AccountsService/users/username
を編集あるいは作成し、以下の設定を追加してください:
[User] Icon=/var/lib/AccountsService/icons/username.png
ここでのファイル名は、1番目の手順で作成したアイコンファイルでなければなりません。なので、必要に応じてファイル名の拡張子を変更してください。
Arch の 64x64 アイコンを使う
archlinux-artworkAUR パッケージには素晴らしいサンプルが含まれており、/usr/share/archlinux/icons
にインストールされます。以下のように /usr/share/icons/hicolor/64x64/devices
にコピーすることが可能です:
# find /usr/share/archlinux/icons -name "*64*" -exec cp {} /usr/share/icons/hicolor/64x64/devices \;
コピーした後は、archlinux-artworkAUR パッケージは削除してかまいません。
自動ログインを有効にする
LightDM の設定ファイルを編集して、以下の設定をアンコメントし、正しく設定してください:
/etc/lightdm/lightdm.conf
[Seat:*] autologin-user=username
パスワードを入力しないで自動的にログインできるようにするには、ユーザを autologin
グループに追加する必要があります:
# groupadd -r autologin # gpasswd -a username autologin
LightDM は ~/.dmrc
に指定されたセッションを使ってログインします。このファイルの設定をオーバーライドするには、lightdm.conf
で autologin-session
を指定してください:
/etc/lightdm/lightdm.conf
[Seat:*] autologin-user=username autologin-session=session
有効なセッション名のリストは、X セッションは /usr/share/xsessions/*.desktop
を、Wayland セッションは /usr/share/wayland-sessions/*.desktop
を一覧表示すればわかります。
インタラクティブなパスワードレスログインを有効化する
LightDM は PAM を経由します。なので、PAM の lightdm 設定ファイルを設定する必要があります:
/etc/pam.d/lightdm
#%PAM-1.0 auth sufficient pam_succeed_if.so user ingroup nopasswdlogin auth include system-login ...
次に、パスワードを入力せずにインタラクティブにログインできるようにするために、あなたのユーザを nopasswdlogin
グループに追加する必要があります:
# groupadd -r nopasswdlogin # gpasswd -a username nopasswdlogin
自動ログインし、さらにパスワード無しで再ログインできるユーザアカウントを作成するには、両方のグループに含まれるユーザを作成してください。例えば:
# useradd -mG autologin,nopasswdlogin -s /bin/bash username
ゲストセッションを有効化する
(システムの設定を変えずに) LightDM でゲストセッションを有効化するには、少なくとも以下の2つが必要です:
- guest-account-script:
guest-account
をデフォルトとし、以下の2つのコマンドを受け入れるスクリプト:- add (一時的なゲストシステムアカウントを作成し、作成されたアカウントのユーザ名を返します)
- remove アカウント名 (対応するアカウントを削除します)
- 作成されたゲストアカウントを追加する autologin グループ (参照:
/etc/pam.d/lightdm-autologin
)。
LightDM でゲストセッションを有効化する AUR パッケージが2つあります:
- lightdm-guestAUR: 上流の (ほぼ変更されていない) guest-session スクリプトと lightdm 自体を提供します。
- lightdm-guest-accountAUR: スクリプトの最小バージョンのみを提供します。
システムユーザーとサービスユーザーを隠す
システムユーザーをログイン画面で表示されないようにするには、任意の依存パッケージ accountsservice をインストールするか、ユーザーの名前を /etc/lightdm/users.conf
の hidden-users
に追加してください。前者の方法ではユーザーを追加・削除したときにリストを更新する必要はありません。
SLiM からの移行
xinitrc の中身を xprofile に移動し、ウィンドウマネージャやデスクトップ環境を起動するコマンドを削除してください。
~/.xinitrc を使ってログイン
ディスプレイマネージャ#セッションとして ~/.xinitrc を実行 を見てください。
NumLock をデフォルトでオンにする
numlockx パッケージをインストールし、/etc/lightdm/lightdm.conf
を編集してください:
/etc/lightdm/lightdm.conf
[Seat:*] greeter-setup-script=/usr/bin/numlockx on
デフォルトセッション
他の DM と同じように、Lightdm は最後に選択された xsession を ~/.dmrc
に保存します。詳しくは ディスプレイマネージャ#セッション設定 を見てください。
ログインウィンドウの位置を変更
GTK greeter
/etc/lightdm/lightdm-gtk-greeter.conf
を編集して position
変数に値を入力する必要があります。x
値と y
値を入れることができ、絶対座標 (ピクセル) と相対座標 (パーセント) で指定できます。また、ウィンドウのアンカーの位置 (start
、center
、end
) を指定することもできます。値はカンマで区切ります。
例:
position=200,start 50%,center
VNC サーバー
Lightdm を使って VNC 経由で接続することも可能です。サーバ側に tigervnc をインストールしてください。任意で、クライアント側の PC にも VNC クライアントとしてインストールしてください。
サーバ側で root として認証パスワードをセットアップしてください:
# vncpasswd /etc/vncpasswd
そして、以下のように LightDM の設定ファイルを編集してください。listen-address
の設定で localhost からの接続のみをリッスンするように VNC を設定していることに注意してください。これは、SSH とポートフォワーディング経由での接続のみを許可するためです。SSH クライアントでは、トンネルの接続先として localhost:5900
のみを使うようにしてください。デュアルスタックのネットワーク接続では 127.0.0.1:5900
や ::1:5900
は信頼性がありません。セキュアでない接続も許可するようにしたい場合、この設定を無効化してください。
/etc/lightdm/lightdm.conf
[VNCServer] enabled=true command=Xvnc -rfbauth /etc/vncpasswd port=5900 listen-address=localhost width=1024 height=768 depth=24
設定したら、TigerVNC#クライアント側 に書かれているように SSH トンネルを開いてローカルホストに接続してください。
light-locker を使って画面をロック
light-locker は LightDM を使用してユーザーを認証するシンプルなスクリーンロッカーです。インストールして起動したら以下のコマンドでセッションをロックできます:
$ light-locker-command -l
上記コマンドを使うにはセッションの最初に light-locker
を起動する必要があります。デフォルトでは、これは XDG 自動起動を使用して有効化されます。その他のオプションは 自動起動 を見てください。
マルチモニターのセットアップ
マルチモニター環境では LightDM がモニターの解像度を適切に設定しないことがあります。以下の Xorg 設定はデュアルモニターの環境で機能します: 大きなプライマリスクリーンを左側に配置し、サブの小さい方のスクリーンをプライマリの右側に配置します。順番は逆にすることも変更することもできます。
/etc/X11/xorg.conf.d/52-resolution-fix.conf
Section "Monitor" Identifier "DP1" Option "PreferredMode" "3840x2160" Option "Primary" "1" EndSection Section "Monitor" Identifier "eDP1" Option "PreferredMode" "1920x1080" Option "RightOf" "DP1" EndSection
これは、/etc/lightdm/lightdm.conf
の display-setup-script
の設定を不要にします。
トラブルシューティング
自動ログインが機能しない
/etc/lightdm/lightdm.conf
内の autologin-user=
に適切な値が設されていることを確認してください。末尾に空白があるとエラーが発生します。
自動ログインが失敗した時に画面に何も表示されない、あるいはログイン画面に即座に戻される場合、logind-check-graphical=true
を設定する必要があるかもしれません。
自動ログインの用途には lightdm-autologin-greeter-gitAUR をインストールすることもできます。
現在の設定を見る
現在の設定を見るには、以下を実行してください:
$ lightdm --show-config
現在の設定、及びそれらの設定が読み込まれた元の設定ファイルが表示されます。
LightDM が起動せず、画面が点滅する
起動時に画面が点滅し続け、LightDM が表示されない場合、LightDM の設定ファイルで greeter を正しく定義しているか確認してください。GTK greeter を適切に定義している場合は、xsessions-directory
(デフォルト: /usr/share/xsessions
) が存在していて少なくとも一つは .desktop ファイルが含まれていることを確認してください。
最後に使用したセッションが利用できなくなった時も同じ問題が lightdm の起動時に発生することがあります (例えば gnome を使った後 gnome-session パッケージを削除した場合): 一番簡単な回避策は削除したパッケージを一時的に戻すことです。もうひとつの解決策は:
# dbus-send --system --type=method_call --print-reply --dest=org.freedesktop.Accounts /org/freedesktop/Accounts/User1000 org.freedesktop.Accounts.User.SetXSession string:xfce
この例は、セッション "xfce" をユーザー ID 1000 のユーザーのデフォルトとして設定します。
間違ったロケールが表示される
LightDM でロケールが正しく表示されない場合はあなたが使用しているロケールを /etc/environment
に追加してください:
LANG=ja_JP.utf8
LightDM や greeter でシステムロケール以外の言語を使いたい場合、ドロップインファイルで Environment=
オプションを使用することで可能です。
起動後数分間反応しない
より多くのエントロピーが必要なのかもしれません。Haveged をインストールし、有効化してください。参照: https://github.com/canonical/lightdm/issues/17
GTK greeter でアイコンが表示されない
lightdm-gtk-greeter を greeter として使っていてプレースホルダ画像がアイコンとして表示される場合、正しいアイコンテーマとテーマを設定してください。次のファイルを確認してください:
/etc/lightdm/lightdm-gtk-greeter.conf
[greeter] theme-name=mate # /usr/share/themes/ 以下のディレクトリの名前 icon-theme-name=mate # /usr/share/icons/ 以下の完全なアイコンセットディレクトリの名前
ログインしようとすると LightDM がフリーズする
適当なユーザー名・パスワードを入力してログインしようとすると、LightDM がフリーズしデスクトップを起動できないことがあります。この問題を修正するには、gdk-pixbuf2 パッケージを再インストールしてください。フォーラムへの投稿を参照。
LightDM が間違ったモニタに表示される
マルチモニタを使っていると、LightDM が間違ったモニタに表示されることがあります (例: プライマリモニタが右側にある場合)。LightDM のログイン画面が特定のモニタで表示されるように指定するには、/etc/lightdm/lightdm.conf
を編集して display-setup-script パラメータを次のように変更してください:
/etc/lightdm/lightdm.conf
display-setup-script=xrandr --output HDMI-1 --primary
HDMI1 は実際のモニタの ID に置き換えてください、xrandr コマンドの出力で確認できます。
もしくは、GTK greeter を使用している場合、/etc/lightdm/lightdm-gtk-greeter.conf
を編集して以下のように active-monitor パラメータを追加することもできます:
/etc/lightdm/lightdm-gtk-greeter.conf
[greeter] active-monitor=0
0 は適当なディスプレイの番号に置き換えてください。
LightDM が表示されない、または TTY 出力のみがモニタに表示される
システムの起動が速すぎて、グラフィックドライバーが読み込まれるよりも先に LightDM サービスが起動してしまうことがあります。このような場合、lightdm.conf
ファイルに以下の設定を追加してください:
/etc/lightdm/lightdm.conf
[LightDM] logind-check-graphical=true
上記の設定で LightDM はグラフィックデバイスの準備が完了するのを待ってから、greeter を生成する、またはセッションを自動起動します。
しかし、新しいバージョンの LightDM では、これがデフォルトの設定になっています。その結果、一部のハードウェアでは、グラフィックドライバが適切に検出されず、LightDM が greeter を起動しない場合があります (ブートしてシステムが安定した後でも)。この場合、この設定を false に設定して、グラフィックドライバのチェックをせずに greeter を起動するように強制的してください。
Intel Graphics で LightDM の FPS が低い
Intel graphics#AccelMethod を参照。
Pulseaudio が自動的に起動しない
PulseAudio#実行 を参照。
ホームディレクトリが暗号化されていると LightDM の表示に時間がかかる
一部の LightDM テーマは、ホームディレクトリ内のアバター画像ファイルにアクセスしようとします。ホームディレクトリが暗号化されている場合、LightDM はホームディレクトリにアクセスできず、フリーズします。以下のどちらかの方法により、これを防止できます:
- #アバターを変更する で説明されているようにアバターを設定する
- lightdm-gtk-greeter の場合のみ:
/etc/lightdm/lightdm-gtk-greeter.conf
でhide-user-image = true
を設定する
"[ OK ] Reached target Graphical Interface." で起動がストップする
/etc/nsswitch.conf
を変更している場合、ユーザとグループの探索に失敗することがあります。これは、/etc/nslcd.conf
で nss_initgroups_ignoreusers ALLLOCAL
を設定せずに nsswitch.conf
のグループに ldap
が含まれている場合に起こります。
Greeter に重複した GNOME エントリがあると Wayland セッションが動作しない
一部の greeter (例: lightdm-webkit2-greeter) は、2つのセッションが同一の名前を持つことをサポートしていません [1]。重複したエントリがあるか確認するには:
$ ls -1 /usr/share/wayland-sessions /usr/share/xsessions
/usr/share/xsessions
内の重複したエントリの名称を変更してください。例えば:
# mv /usr/share/xsessions/gnome.desktop /usr/share/xsessions/gnome.desktop.disabled
初回ログイン時に必ずセクメンテーション違反が発生する
ネットワーク設定#ホスト名の設定 にあるように、ホスト名を設定してください。FS#47694 も参照してください。
ログインの無限ループ
正しいユーザ名とパスワードを入力しても画面が真っ暗になり、何度やってもログインに戻るというループに陥った場合、rm ~/.Xauthority
を実行する (つまり、無限ループが発生しているユーザの問題のある .Xauthority
を削除する) と解決することがあります。
もう一つの理由は、あなたが "lightdm.conf" を一から作り直そうとして、以下の行を入れ忘れたのかもしれません:
session-wrapper=/etc/lightdm/Xsession
この行がないと、LightDM は、Arch Linux には存在しない "lightdm-session" をセッションラッパーとして使おうとしてしまいます。