Como usar a instância “systemd --user”?

3

Eu tenho um executável que gostaria de executar como usuário e esse usuário deve poder iniciar e interromper esse serviço sem sudo.

Eu tenho systemd --user sempre em execução para o usuário executando loginctl enable-linger user

Confirmei que a systemd --user instance está sendo executada como esse usuário usando ps , mas quando tento executar qualquer comando systemctl como esse usuário, recebo o seguinte erro:

vagrant-ubuntu-vivid-64:~$ systemctl --user list-units
Failed to get D-Bus connection: Connection refused

Com base no meu googling, parece que eu deveria ter uma instância dbus-daemon em execução como esse usuário, mas não é. Deve-se notar que estou mudando para o usuário com su , portanto, pode não estar contando como um "login".

Eu tenho duas perguntas:

  1. A instância do meu usuário de systemd usa apenas a instância do sistema do d-bus?
  2. O Ubuntu de alguma forma deve iniciar uma instância de usuário do d-bus para mim?
por Luke Hoersten 20.07.2015 / 20:51

1 resposta

4

O Ubuntu ainda está usando upstart para gerenciar a sessão do usuário e systemd gerencia apenas a sessão do sistema. Espero que na próxima versão, a sessão do usuário migre para systemd , e então isso funcionará.

    
por psusi 23.07.2015 / 03:09