Como posso visualizar os temporizadores systemd para todos os usuários?

2

Eu tenho alguns usuários rodando no modo linger nos sistemas systemd Ubuntu e Arch Linux. Ou seja, os timers dos usuários podem estar em execução, mesmo que não estejam conectados ao sistema. Como usuário root, como posso ver todos os timers ativos, incluindo todos os timers dos usuários?

systemctl list-timers me dará os temporizadores do sistema. Se eu estou logado como um usuário systemctl --user list-timers vai me dar os temporizadores para esse usuário. No entanto, se eu executar sudo -u anotheruser systemctl --user list-timers , obtenho Failed to connect to bus: No such file or directory .

    
por Dave Parrish 03.10.2016 / 05:14

1 resposta

1

Graças ao canal de IRC #systemd do Freenode (usuários dreisner e damjan), Eu aprendi que o systemd requer que o usuário execute systemctl --user list-timers para imprimir os timers de execução.

Se um administrador do sistema quiser sudo ou su como outro usuário para ver os timers, precisará definir a variável XDG_RUNTIME_DIR envrionment.

Por exemplo, sudo -u $anotheruser XDG_RUNTIME_DIR=/run/user/$anotheruser_uid systemctl --user list-timers retornará $anotheruser timers.

Para automatizar o processo de visualizar todos os timers no sistema, criei um script em Bash e Haskell .

    
por 03.10.2016 / 05:14