journald — это системная служба в операционных системах Linux, которая собирает и хранит данные журналов (логи), является неотъемлемой частью systemd и не может использоваться отдельно. Данные журнала хранятся в бинарном виде в папке /var/log/journal/MACHINE-ID
и могут занимать значительный объем дискового пространства.
Для уменьшения размера логов journald проведём анализ и посмотрим, сколько места эти файлы журнала на самом деле занимают в нашей системе с помощью следующей команды:
journalctl --disk-usage Archived and active journals take up 1.9G in the file system.
Чтобы безопасно и правильно удалить логи нужно в первую очередь пометить все активные файлы журналов как заархивированные.
journalctl --rotate
Далее существуют 3 способа очистки journald — это vacuum-size, vacuum-time и vacuum-files.
Ограничить размер директории до указанного размера. В примере ниже обрежутся журналы до размера 1 гигабайт.
journalctl --vacuum-size=1G
Ограничить размер директории по времени хранения. В примере ниже журналы старше 7 дней будут удалены.
journalctl --vacuum-time=7d
Ограничить по количеству файлов журналов. В примере ниже удалятся все файлы журналов кроме 5 последних.
journalctl --vacuum-files=5
Но все эти команды предназначены для ручного удаления логов, если Вы хотите небольшой автоматизации этого процесса и очистки архивных журналов после того, как они превысят определенный размер на диске или по прошествии определенного времени, без вашего участия, требуется отредактировать лимиты в конфигурационном файле /etc/systemd/journald.conf
и раскоментировав, а затем добавив значения в переменную
[Journal] ... SystemMaxUse=1G ...
С последующим перезапуском системной службы
systemctl force-reload systemd-journald