Использование journalctl в Linux для просмотра и управления журналами системы

Утилита journalctl в Linux используется для просмотра и управления журналами системы (логи), которые собираются службой systemd-journald, частью системы инициализации и управления службами systemd. Она предоставляет централизованный доступ к логам, собираемым из разных источников на системе, включая ядро, начальную загрузку, и службы. journalctl тесно интегрирована с systemd, основной системой инициализации и управления службами в современных дистрибутивах Linux. systemd использует systemd-journald для сбора и хранения логов.

Любая служба, управляемая через systemd, автоматически имеет свои журналы, собираемые и доступные через journalctl. Это упрощает диагностику проблем и мониторинг состояния системных служб.

Зачем нужна journalctl:

  1. Централизованное логирование: journalctl обеспечивает единый доступ к логам системы, что упрощает процесс поиска и анализа журналов событий.
  2. Подробные логи: Журналы, собранные systemd-journald, содержат подробную информацию, включая метаданные о процессе, который сгенерировал сообщение, временные метки с высокой точностью и многое другое.
  3. Фильтрация и поиск: journalctl предлагает мощные возможности для фильтрации и поиска в журналах, позволяя пользователям легко находить записи, соответствующие определенным критериям, таким как диапазон дат, приоритет сообщений или связанные с определенной службой.
  4. Управление журналами: journalctl позволяет настраивать поведение журналов, например, контролировать размер журналов, настраивать их ротацию и период хранения.

Утилита journalctl предлагает множество опций для просмотра и фильтрации логов системы. Вот несколько примеров использования journalctl:

  • Для просмотр всех логов просто введите команду journalctl
  • Просмотр логов определенной службы (например, nginx.service):
journalctl -u nginx.service
  • Просмотр логов за определенный период времени: например, "2023-01-01":
journalctl --since "2023-01-01"
journalctl --since "2023-01-01" --until "2023-01-02"

Логи за последние 24 часа:

journalctl --since "1 day ago"
  • Просмотр логов с пагинацией (прокрутка вверх и вниз по страницам):
journalctl | less

Просмотр определенного количества последних записей (например, последние 20 записей):

journalctl -n 20
  • Фильтрация по приоритету (например, показать только ошибки):
journalctl -p err
  • Просмотр логов в обратном порядке (последние события первыми):
journalctl -r

Для непрерывного просмотра логов в реальном времени, аналогично тому как работает tail -f, вы можете использовать -f (follow) опцию с journalctl. Эта команда будет выводить новые журналы по мере их поступления, что особенно полезно для мониторинга текущих событий системы в реальном времени. Например, мы хотим увидеть кто пытается получить доступ по протоколу SSH:

journalctl -f -u ssh.service

Если нужно сразу немного контекста (как tail -n 50 -F):

journalctl -u ssh.service -n 50 -f

Посмотреть размер всех файлов логов systemd-journald

journalctl --disk-usage

Чтобы очистить до нужного размера файлы логов для systemd версии 218 и выше можно использовать ключи vacuum-size и vacuum-time. Опция –vacuum-size=10M позволяет управлять размером журнала, удаляя старые записи до тех пор, пока общий размер не уменьшится до указанного значения. Опция указывает journalctl удалить старые записи до тех пор, пока общий размер журнала не станет равным или меньше 10 мегабайт.

journalctl --vacuum-size=10M

Если вы хотите удалить записи по времени, вы можете использовать опцию –vacuum-time. Например, чтобы удалить записи старше 1 дня, выполните:

$ journalctl --vacuum-time=1d

Измените параметры хранения в конфигурационном файле /etc/systemd/journald.conf:

  • SystemMaxUse — максимальный объем для хранения логов, например SystemMaxUse=2G
  • SystemMaxFileSize — максимальный размер отдельного файла.
  • SystemMaxRetentionSec — максимальный срок хранения журналов.

После внесения изменений перезапустите сервис:

sudo systemctl restart systemd-journald

journalctl предоставляет гибкие возможности для работы с системными логами, позволяя пользователям адаптировать процесс просмотра и фильтрации логов под свои конкретные потребности.

Рекомендуемые обзоры инструментов

Обзор и отзывы об антидетект браузере Aurorium AI.
Aurorium AI: Обзор и отзывы

Инновационный браузер с поддержкой ИИ

Обзор и отзывы об антидетект браузере Undetectable.
Undetectable Browser: Честный обзор

Бесконечные профили для арбитража

Антидетект браузер Vision: обзор и реальные отзывы.
Браузер Vision: Реальные отзывы

Надежное решение для мультиаккаунтинга

Обзор и отзывы об антидектет браузере Dolphin.
Dolphin {anty}: Обзор функционала

Лидер рынка для арбитражников

📌 Умный подбор сервера: Официальный инструмент проекта DIEG — агрегатор DIEG Finder. Это часть единой экосистемы, созданной для того, чтобы помочь быстро найти и сравнить по параметрам подходящий VPS/VDS сервер для любых задач хостинга.
📌 Инфраструктура для разработчиков: Для тестирования скриптов, установщиков VPN и Python-ботов рекомендуем использовать надежные VPS на короткий срок. Подробнее о быстрой аренде VPS для экспериментов читайте здесь.