Как направить вывод журнала определенных единиц в конкретный файл?

Оказывается, что переустановка всего гнома решила вопрос.

apt-get install --reinstall gnome
12
23.09.2017, 23:11
1 ответ

Похоже, это невозможно и нежелательно upstream (перенаправление stdout/stderr в отдельные файлы) см., например, http://lists.freedesktop.org/archives/systemd-devel/2012-March/004705.html - прочитайте весь поток для получения более подробной информации о том, как это должно работать.

- Вы можете либо записать в syslog, либо в отдельные файлы. Или наоборот, если блок вызывает какую-нибудь программу, которая сама может записать лог, то используйте ее для записи в файл.

Вы также можете посмотреть на Просмотр stdout/stderr системного сервиса

Что вы уже можете сделать с вашей текущей установкой, так это использовать
logctl -u yourunitname > yourlogfile_for_yourunitname
для того, чтобы направить весь вывод журнала для вашего устройства "yourunitname" в файл.

Во второй части вы также должны взглянуть на подсказки Леннарта из вышеупомянутого потока списка рассылки:

На последних версиях системдов что-то вроде systemd-journalctl -o cat _SYSTEMD_UNIT=postgresql.service должен создать очень простой вывод. которая включает в себя только фактические сообщения и ничего больше. Вы даже можете передай "-f" и сделай это в прямом эфире."

EDIT: На самом деле, для более новых версий systemd команда только journalctl, и из того, что я могу сказать, вышеупомянутая длинная команда такая же, как journalctl -u yourunitname, и вы также можете -f там "следовать" за выводом (как в tailf или tail -f).

10
27.01.2020, 19:56

Теги

Похожие вопросы