Sto cercando di imparare l'utilizzo di base del sistema e ho riscontrato un problema confuso con le unità di servizio utente.
Quando eseguo servizi ordinari con systemctl avvia some.service Posso trovare il registro completo per questo servizio (incluso ciò che ha stampato su stdout / stderr, come ho capito) eseguendo sudo journalctl --unit some.service .
Considera l'esempio servicefile chatty.service :
[Service]
ExecStart=/usr/bin/echo "test from chatty.service"
Quando inserisco questo file di servizio in ~ / .config / systemd / user / chatty.service ed eseguo con systemctl - l'utente avvia chatty.service non riesco a trovare l'output inviato a stdout in journalctl, né con journalctl normale né con journalctl - -utente . Ottengo solo il seguente output in entrambi:
Jan 15 19:16:52 qbd-x230-suse.site systemd[1168]: Starting chatty.service...
Jan 15 19:16:52 qbd-x230-suse.site systemd[1168]: Started chatty.service.
E journalctl --unit chatty.service non restituisce nulla (con o senza --user non fa alcuna differenza).
Mentre se sposto lo stesso file di servizio in / etc / systemd / system e lo eseguo con sudo systemd avvia chatty.service, quando eseguo sudo journalctl --unit chatty.service ottengo il seguente output :
Jan 15 19:28:08 qbd-x230-suse.site systemd[1]: Starting chatty.service...
Jan 15 19:28:08 qbd-x230-suse.site systemd[1]: Started chatty.service.
Jan 15 19:28:08 qbd-x230-suse.site echo[27098]: test from chatty.service
Sembra che l'unità di servizio utente non sia così ben integrata in qualche modo, è previsto, mi sto perdendo qualcosa o è un bug?
Sto eseguendo openSUSE 13.1 x86-64, con systemd 208 (installazione predefinita).
journalctl --user --user-unit chatty
per ottenere quei messaggi di avvio / arresto da systemd, ma non ciò che viene emesso dal processo di eco, almeno nel mio caso. È possibile ottenere il messaggio con l'ecojournalctl --user
o utilizzare qualche altro filtro.