
Estoy usando Mate en Parabola GNU/Linux (basado en Arch). Tengo instalado el agente de autenticación polkit-mate y se supone que se inicia automáticamente al iniciar sesión en el escritorio; sin embargo, no parece iniciarse, ni automática ni manualmente. En mi ~/.xsession-errors
archivo, veo el siguiente error:
(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
Veo un error muy similar si intento iniciarlo desde la terminal, ya sea como usuario normal o como root. El archivo de errores también muestra advertencias de dbind para muchos otros paquetes; no sé si eso tiene algo que ver con eso. Estoy usando openrc, no systemd.
El problema parece similar a esta pregunta existente; sin embargo, iniciar manualmente parece funcionar allí, por lo que es posible que el problema subyacente no sea el mismo:
polkit-gnome-authentication-agent-1 no se inicia automáticamente después de la actualización
¿Alguna idea o sugerencia?
Editar:
La salida de ps -Af | grep dbus
parece mostrar que dbus se está ejecutando y que el usuario que inició sesión posee un demonio:
$ 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 también parece estar ejecutándose y funcionando, según el resultado de busctl
.
También intenté instalar el agente de autenticación Gnome ( polkit-gnome
) y aparece exactamente el mismo error cuando intento ejecutarlo desde la terminal.
Respuesta1
Resolví este problema gracias a algunos consejos de uno de los desarrolladores de elogind y quiero cerrarlo, en caso de que alguien más experimente problemas similares:
El problema fue la configuración PAM incorrecta para el administrador de pantalla, cuando se ejecuta con elogind, en lugar de systemd. La configuración predeterminada de mi distribución parecía no ser compatible con elogind. Los archivos sddm-greeter
y system-login
deben /etc/pam.d
modificarse para llamar a elogind, en lugar de systemd:
session optional pam_elogind.so
Por ejemplo, cambié sddm-greeter a:
#%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)
e inicie sesión en el sistema para:
#%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)
Básicamente, comenté las líneas de systemd y las reemplacé con los equivalentes de elogind. Después de eso, la autenticación del agente polkit funcionó bien.