Pi3で行ったように、LIME2にYunohostをインストールしましたが、2ヶ月間同じエラーが発生します(」ユーザーサービスを有効にできません。 「D-Bus接続が取得できません:接続が拒否されました」サポート")、今回はlibpam-systemdをインストールしました。
admin@Gildurklaus:~ $ systemctl --user list-units
Failed to get D-Bus connection: Connection refused
繰り返しますが、コマンドはユーザー引数なしでうまく機能します。
admin@Gildurklaus:~ $ systemctl list-units
UNIT LOAD ACTIVE SUB DESCRIPTION
proc-sys-fs-binfmt_misc.automount loaded active waiting Arbitrary Executable File Formats File System Automount Point
sys-devices-platform-soc-3f201000.serial-tty-ttyAMA0-hci0-rfkill1.device loaded active plugged /sys/devices/platform/soc/3f201000.serial/tty/ttyAMA0/hci0/rfkil
sys-devices-platform-soc-3f201000.serial-tty-ttyAMA0-hci0.device loaded active plugged /sys/devices/platform/soc/3f201000.serial/tty/ttyAMA0/hci0
...
To show all installed unit files use 'systemctl list-unit-files'.
lines 102-129/129 (END)
同様に、Dbusは私のユーザーに対しては実行されず、システム全体でのみ実行されます。
admin@Gildurklaus:~ $ ps -ef | grep dbus
message+ 574 1 0 05:53 ? 00:00:00 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
admin 1988 1971 0 10:03 pts/0 00:00:00 grep dbus
同様に、そのユーザーに対してsystemdが実行されていないようです。
admin@Gildurklaus:~$ ps -ef | grep dbus
message+ 574 1 0 05:53 ? 00:00:00 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
admin 1988 1971 0 10:03 pts/0 00:00:00 grep dbus
admin@Gildurklaus:~$ ps -ef | grep systemd
root 183 1 0 05:53 ? 00:00:01 /lib/systemd/systemd-journald
root 187 1 0 05:53 ? 00:00:00 /lib/systemd/systemd-udevd
root 572 1 0 05:53 ? 00:00:00 /lib/systemd/systemd-logind
message+ 574 1 0 05:53 ? 00:00:00 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation
admin 1990 1971 0 10:04 pts/0 00:00:00 grep systemd
$XDG_RUNTIME_DIRが再び欠落しています。
admin@Gildurklaus:~ $ systemd --test
Trying to run as user instance, but $XDG_RUNTIME_DIR is not set.
今回はlibpam-systemdがインストールされました。
admin@Gildurklaus:~$ apt list --installed *systemd*
Listing... Done
libpam-systemd/oldstable,now 215-17+deb8u7 armhf [installed]
libsystemd0/oldstable,now 215-17+deb8u7 armhf [installed]
systemd/oldstable,now 215-17+deb8u7 armhf [installed]
systemd-shim/oldstable,now 9-1 armhf [installed,automatic]
systemd-sysv/oldstable,now 215-17+deb8u7 armhf [installed]
admin@Gildurklaus:~$ apt list --installed *dbus*
Listing... Done
dbus/oldstable,now 1.8.22-0+deb8u1 armhf [installed,automatic]
libdbus-1-3/oldstable,now 1.8.22-0+deb8u1 armhf [installed,automatic]
libdbus-glib-1-2/oldstable,now 0.102-1 armhf [installed,automatic]
libnih-dbus1/oldstable,now 1.0.3-4.3 armhf [installed,automatic]
【書き直す】
Pi3とLIME2サーバーの間に微妙な違いがあることがわかりました。 Pi3はXDG_SESSION_IDセッションを開始しますが、LIME2サーバーは起動しません。
Pi3
admin@Yroklaus:~ $ sudo systemctl status systemd-logind.service
● systemd-logind.service - Login Service
Loaded: loaded (/lib/systemd/system/systemd-logind.service; static)
Active: active (running) since Sat 2018-03-24 15:43:32 UTC; 1h 27min ago
Docs: man:systemd-logind.service(8)
man:logind.conf(5)
http://www.freedesktop.org/wiki/Software/systemd/logind
http://www.freedesktop.org/wiki/Software/systemd/multiseat
Main PID: 508 (systemd-logind)
Status: "Processing requests..."
CGroup: /system.slice/systemd-logind.service
└─508 /lib/systemd/systemd-logind
Mar 24 15:43:32 Yroklaus systemd[1]: Starting Login Service...
Mar 24 15:43:32 Yroklaus systemd-logind[508]: New seat seat0.
Mar 24 15:43:32 Yroklaus systemd[1]: Started Login Service.
Mar 24 15:43:32 Yroklaus systemd-logind[508]: Couldn't add lingering user folatt: No such file or directory
Mar 24 15:43:32 Yroklaus systemd-logind[508]: User enumeration failed: No such file or directory
Mar 24 16:47:01 Yroklaus systemd-logind[508]: New session c1 of user admin.
ライム2
admin@Gildurklaus:~$ sudo systemctl status systemd-logind.service
● systemd-logind.service - Login Service
Loaded: loaded (/lib/systemd/system/systemd-logind.service; static)
Active: active (running) since Sat 2018-03-24 16:43:45 CET; 1h 27min ago
Docs: man:systemd-logind.service(8)
man:logind.conf(5)
http://www.freedesktop.org/wiki/Software/systemd/logind
http://www.freedesktop.org/wiki/Software/systemd/multiseat
Main PID: 571 (systemd-logind)
Status: "Processing requests..."
CGroup: /system.slice/systemd-logind.service
└─571 /lib/systemd/systemd-logind
Mar 24 16:43:45 Gildurklaus systemd-logind[571]: New seat seat0.
Mar 24 16:43:45 Gildurklaus systemd[1]: Started Login Service.
答え1
Dbus が再実行中です。
いいえ、明らかにそうではありません。今回は最後でもありません。
あなたのプロセスのリストは次のとおりです。システム全体デスクトップバスブローカー。--system
コマンドパラメータとプロセスの事実を参照してください。君のように走るのはダメ。
systemctl
このオプションを実行すると、--user
各ユーザーインスタンスとsystemd
通信します。ユーザーごとデスクトップバスブローカー。
実際、どちらも実行していません。
ユーザー固有のインスタンスを起動すると、systemd
ユーザー固有のデスクトップエージェントも起動されることがわかります。前者は後者を管理し、このdbus.socket
単位(/usr/lib/systemd/user/dbus.socket
)はすでにユーザー固有のサービス管理者に対して有効になっている可能性があります。 (参考としてこれはソケット代わりにデバイスを有効にする必要があります。提供する単位。 )
したがって、以前のQ&Aに明示的に言及されていませんが、以前の回答と実質的に同じです。ユーザー固有のインスタンスがsystemd
実行されていることを確認し、ユーザー固有のデスクトップバスエージェントが起動していることを確認してください。ステップを手動で実行して、pam_systemd
まずステップ自体が有効であることを確認できます。次に、pam_systemd
ログインプロセス中に実際に呼び出されるように設定されていることを確認してください。
覚えてくださいsu
ログインメカニズムではありません。効果がある既存対話型ログインセッション。問題のアカウントでログインしていない場合、systemdフックはそのアカウントのユーザー固有のsystemdインスタンスをアクティブにしません。
追加読書
- ジョナサンデボインポラード(2014)。ユーザー権限を削除するためにsuを乱用しないでください。。一般的な答え。
- Lennart Petlinget al。 (2017).
pam_systemd
。システムマニュアルページ。 freedesktop.org. - https://unix.stackexchange.com/a/423648/5132
- https://unix.stackexchange.com/a/427917/5132
- https://unix.stackexchange.com/a/407863/5132
答え2
libpam-systemd
PAMスタックから呼び出す必要があります。
実行してpam-auth-update
有効になっていることを確認してください。