Eu configurei o systemd para que o uso systemctl start user@me
inicie meus serviços do usuário conforme o esperado, mas o meu dbus não funcionará (o que eu preciso para o PulseAudio).
Existe alguma maneira de verificar o dbus ou systemd para descobrir o que estou fazendo de errado?
Neste ponto, estou sem idéias para o que tentar. Informe-me se houver outra coisa que eu possa fornecer que possa ser relevante.
Informações adicionais / tentativa de resolução
Estou usando o Arch Linux, systemd 204-1 e dbus 1.6.10-1
Iniciar o systemd do usuário # systemctl start user@me
me fornece o seguinte:
├─systemd─┬─(sd-pam)
│ ├─mpd───5*[{mpd}]
│ └─pulseaudio─┬─gconf-helper
│ └─2*[{pulseaudio}]
Iniciando systemd --user &
manualmente conforme meu usuário produz:
├─bash─┬─pstree
│ └─systemd─┬─2*[dbus-daemon]
│ ├─dbus-launch <<< X only
│ ├─gconfd-2 <<< X only
│ ├─mpd───5*[{mpd}]
│ └─pulseaudio─┬─gconf-helper
│ └─2*[{pulseaudio}]
E cospe o seguinte erro se eu não estiver no X, apesar de habilitar meu usuário dbus.service:
Failed to open private bus connection: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
Failed to open private bus connection: Unable to autolaunch a dbus-daemon without a $DISPLAY for X11
Links Relacionados:
- /superuser/476379/how-do-i-setup-a-systemd-service-to-be-started-by-a-non-root-user-as-a-user-daem
- https://github.com/sofar/user-session-units
- https://github.com/grawity/systemd-user-units
Os dois primeiros mencionam um problema com o dbus, mas no link 2 ele diz que o problema foi corrigido no dbus-1.6.9, então acho que o problema está na minha implementação e não no bug.
Usei serviços de exemplo de usuário dos links 2 e 3.
fonte