polkit-mate-authentication-agent を起動できません

polkit-mate-authentication-agent を起動できません

私は Parabola GNU/Linux (Arch ベース) で Mate を使用しています。polkit-mate-authentication-agent をインストールしており、デスクトップにログインすると自動的に起動するはずですが、自動でも手動でも起動しないようです。私の~/.xsession-errorsファイルには、次のエラーが表示されています。

(polkit-mate-authentication-agent-1:24207): dbind-WARNING **: 07:13:53.904: Couldn't register with
accessibility bus: Did not receive a reply. Possible causes include: the remote application did
not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or 
the network connection was broken.
Cannot register authentication agent: GDBus.Error:org.freedesktop.PolicyKit1.Error.Failed: Cannot 
determine user of subject

通常のユーザーまたは root としてターミナルから起動しようとすると、非常によく似たエラーが表示されます。エラー ファイルには、他の多くのパッケージの dbind 警告も表示されますが、それが関係しているかどうかはわかりません。私は systemd ではなく、openrc を使用しています。

この問題は、この既存の質問と似ているようですが、手動で起動するとそこで機能するようです。したがって、根本的な問題は同じではない可能性があります。

polkit-gnome-authentication-agent-1 はアップグレード後に自動的に起動しません

何かアイデアや提案はありますか?

編集:

の出力はps -Af | grep dbus、dbus が実行中であり、デーモンがログインしたユーザーによって所有されていることを示しているようです。

$ ps -Af | grep dbus
dbus      1332     1  0 Mar21 ?        00:00:14 /usr/bin/dbus-daemon --system
john     15835 26842  0 10:18 pts/0    00:00:00 grep --color=auto dbus
lightdm  24087     1  0 07:13 ?        00:00:00 dbus-launch --autolaunch 91d1384971b9deaa251b73355e5436ad --binary-syntax --close-stderr
lightdm  24088     1  0 07:13 ?        00:00:00 /usr/bin/dbus-daemon --syslog-only --fork --print-pid 5 --print-address 7 --session
lightdm  24096 24090  0 07:13 ?        00:00:00 /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 3
john     24117     1  0 07:13 ?        00:00:00 dbus-launch --exit-with-session mate-session
john     24118     1  0 07:13 ?        00:00:00 /usr/bin/dbus-daemon --syslog --fork --print-pid 5 --print-address 7 --session

の出力によると、dbus も実行され、動作しているようですbusctl

Gnome 認証エージェント ( polkit-gnome) のインストールも試みましたが、ターミナルから実行しようとするとまったく同じエラーが発生します。

答え1

elogind 開発者の 1 人からのアドバイスのおかげで、この問題を解決しました。他の誰かが同様の問題を経験した場合に備えて、ここで締めくくりたいと思います。

問題は、systemd ではなく elogind で実行しているときに、ディスプレイ マネージャーの PAM 構成が間違っていることでした。私のディストリビューションのデフォルト構成は elogind と互換性がないようです。systemdではなく elogind を呼び出すように、ファイルsddm-greeterとを変更する必要がありsystem-loginます。/etc/pam.d

session optional pam_elogind.so

たとえば、sddm-greeter を次のように変更しました。

#%PAM-1.0

# Load environment from /etc/environment and ~/.pam_environment
auth            required pam_env.so

# Always let the greeter start without authentication
auth            required pam_permit.so

# No action required for account management
account         required pam_permit.so

# Can't change password
password        required pam_deny.so

# Setup session
session         required pam_unix.so
#-session               optional pam_systemd.so
session         optional pam_elogind.so
sddm-greeter (END)

システムログインは次の通りです:

#%PAM-1.0

auth       required   pam_tally2.so        onerr=succeed file=/var/log/tallylog
auth       required   pam_shells.so
auth       requisite  pam_nologin.so
auth       include    system-auth

account    required   pam_tally2.so 
account    required   pam_access.so
account    required   pam_nologin.so
account    include    system-auth

password   include    system-auth

session    optional   pam_loginuid.so
session    optional   pam_keyinit.so       force revoke
session    include    system-auth
session    optional   pam_motd.so          motd=/etc/motd
session    optional   pam_mail.so          dir=/var/spool/mail standard quiet
#-session   optional   pam_systemd.so
session    optional   pam_elogind.so
session    required   pam_env.so
system-login (END)

基本的に、systemd の行をコメントアウトし、elogind の同等の行に置き換えました。その後、polkit エージェントの認証は正常に機能しました。

関連情報