# journalctl и журнал systemd

> Как читать логи с помощью journalctl, проверять объем занимаемого журналом места и безопасно очищать его с помощью опций --vacuum.

journalctl — это команда для чтения журнала systemd, бинарного хранилища логов, используемого в большинстве современных дистрибутивов Linux. Она фильтрует сообщения по службе, загрузке, времени и приоритету, а также позволяет отслеживать и ограничивать использование дискового пространства журналом, который часто разрастается до нескольких гигабайт в /var/log/journal.

## Чтение логов

'journalctl -u nginx.service' показывает сообщения конкретной службы. '-b' ограничивает вывод текущей загрузкой, '-b -1' — предыдущей. '-p err' отображает только ошибки и более критические события. '--since "1 hour ago"' ограничивает вывод по времени, а '-f' позволяет следить за новыми сообщениями в реальном времени.

## Использование диска

'journalctl --disk-usage' выводит общий размер активных и архивных файлов журнала.

'--vacuum-size=', '--vacuum-time=' и '--vacuum-files=' удаляют архивные файлы журнала до достижения заданного лимита; они не затрагивают активные файлы.

## Постоянные ограничения

Ограничения задаются в /etc/systemd/journald.conf, например SystemMaxUse=500M, после чего применяются командой 'systemctl restart systemd-journald'. Если настройки отсутствуют, journald по умолчанию удерживает размер журнала в пределах 10% от размера файловой системы, но не более 4 ГБ.

## Как уменьшить размер журнала

1. Проверить размер: journalctl --disk-usage
2. Ротировать активные файлы, чтобы их можно было очистить: sudo journalctl --rotate
3. Оставить логи только за две недели: sudo journalctl --vacuum-time=2weeks
4. Или оставить не более 500 МБ: sudo journalctl --vacuum-size=500M
5. Чтобы сделать настройки постоянными, установите SystemMaxUse=500M в /etc/systemd/journald.conf и выполните: sudo systemctl restart systemd-journald

## Осторожно

- Удаленные логи восстановить нельзя; сохраняйте достаточно истории для расследования проблем.
- Не удаляйте файлы в /var/log/journal вручную, пока работает journald.

## Источники

- [journalctl(1)](https://man7.org/linux/man-pages/man1/journalctl.1.html)
- [journald.conf(5)](https://man7.org/linux/man-pages/man5/journald.conf.5.html)

Обновлено: 2026-10-08
URL: https://raincleaner.eu/ru/wiki/linux/journalctl
