Как разрешить пользователю использовать journalctl для просмотра пользовательских журналов системных служб?


15

Я использую сервисы уровня пользователя в Ubuntu 16.04 LTS. Например, мой test.service расположен в ~ / .config / systemd / user / test.service

Я смог запустить службу, выполнив

systemctl --user start test.target

Однако, когда я пытаюсь прочитать его журнал с помощью journalctl, я получил это сообщение об ошибке:

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.

Как я могу использовать journalctl для конкретного юнита пользователя?

Ответы:


10

На старых версиях systemd вам придется использовать journalctl --user --user-unit=SERVICENAME(на новых версиях journalctl --user -u SERVICENAMEбудет работать нормально).

Однако это работает только в том случае, если Storageдиректива [Journal]раздела /etc/systemd/journald.confустановлена ​​в persistent(вместо autoили volatile). Перезагрузитесь после редактирования файла конфигурации, и пользователь сможет увидеть журнал.

Дополнительная информация: https://www.freedesktop.org/software/systemd/man/journald.conf.html https://lists.freedesktop.org/archives/systemd-devel/2016-October/037554.html


1
Добавление пользователя в группу systemd-journal было тем ответом, который мне был нужен (по этой ссылке в списке рассылки).
Трэвис Уэлл

Это работало для меня в Ubuntu 17.10, где один пользователь необъяснимым образом не мог просматривать свои журналы, а другой мог.
ЭльБрадфорд

2
Добавление пользователя в группу systemd-journal было бы обходным путем, но, поскольку мой сервис был пользовательским сервисом, я не думаю, что журналы создавались в первую очередь, поэтому позволить моему пользователю просматривать все остальные журналы не будет все равно помогло.
ЭльБрадфорд,
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.