Come consentire a un utente di utilizzare journalctl per visualizzare registri di servizio systemd specifici dell'utente?


14

Sto eseguendo servizi a livello di utente in Ubuntu 16.04 LTS. Ad esempio, ho il mio test.service situato in ~ / .config / systemd / user / test.service

Sono stato in grado di eseguire il servizio facendo

systemctl --user start test.target

Tuttavia, quando provo a leggere il suo registro usando journalctl, ho ricevuto questo messaggio di errore:

journalctl --user -u test.service
Hint: You are currently not seeing messages from other users and the system.
  Users in the 'systemd-journal' group can see all messages. Pass -q to
  turn off this notice.
No journal files were opened due to insufficient permissions.

Come posso usare journalctl per l'unità specifica dell'utente?

Risposte:


10

Sulle versioni precedenti di systemd, dovrai usare journalctl --user --user-unit=SERVICENAME(sulle versioni più recenti journalctl --user -u SERVICENAMEfunzionerà bene).

Tuttavia, questo funziona solo se la Storagedirettiva della [Journal]sezione di /etc/systemd/journald.confè impostata su persistent(anziché su autoo volatile). Riavvia dopo aver modificato il file di configurazione e l'utente sarà in grado di vedere il diario.

Ulteriori informazioni: https://www.freedesktop.org/software/systemd/man/journald.conf.html https://lists.freedesktop.org/archives/systemd-devel/2016-October/037554.html


1
L'aggiunta dell'utente al gruppo systemd-journal è stata la risposta di cui avevo bisogno (da quel link alla mailing list).
— Travis Well,

Questo ha funzionato per me su Ubuntu 17.10, dove un utente inspiegabilmente non poteva visualizzare i suoi registri, mentre un altro poteva farlo.
— elBradford,

1
Aggiungere un utente al gruppo systemd-journal sarebbe una soluzione alternativa, ma poiché il mio servizio era un servizio utente, non credo che i log siano stati generati in primo luogo, quindi consentire al mio utente di visualizzare tutti gli altri log non lo farebbe ho aiutato comunque.
— ElBradford,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.