Я потратил несколько дней на написание скрипта на Python и создание для него системного файла systemd. Во время тестирования скрипт регистрировал множество ошибок в journald. Я хотел бы убрать эти ошибки из journald теперь, когда я закончил.
Есть несколько способов очистить весь журнал, как описано здесь: Как очистить journalctl,
включая использование journalctl --vacuum-time=2d
, использование journalctl --vacuum-size=500M
и временную установку SystemMaxUse=
в /etc/systemd/journald.conf очень низкого значения.
Все это, кажется, очищает весь журнал, воздействуя на все юниты. Мне просто нужно очистить записи для одного блока. Это возможно?
Ответы:
Используйте мою программу Python 3 copy_journal.py для файлов журнала,
/var/log/journal
из которых вы хотите удалить записи.Например, сделать копию
system.journal
без записей журнала дляNetworkManager.service
:источник
Я не думаю, что это возможно, потому что согласно man-странице journalctl «Вывод чередуется из всех доступных файлов журнала, независимо от того, вращаются они или записываются в настоящее время».
Однако вы можете отфильтровать его по модулю - journalctl -u some.service, а затем попытаться удалить записи журнала из журнала с помощью собственного сценария, используя cron.
источник