Пост

Просмотр журналов службы systemd-journald

Просмотр журналов службы systemd-journald

Служба systemd-journald отвечает за сбор журналов systemd и получает сообщения от ядра, служб systemd и других источников. Эти журналы собираются в одном месте, что упрощает их просмотр. Записи журналов структурированы и проиндексированы, поэтому journalctl может представлять информацию из журналов в различных удобных форматах.

Введение

Для просмотра журналов, собираемых systemd используется команда - journalctl.

  • Файлы журналов Journald располагаются в /var/log/journal/.
  • Настройки поведения демона задаются в файле /etc/systemd/journald.conf.

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

Чтобы просмотреть все логи в журнале, выполните команду journalctl без аргументов:

1
journalctl

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

Навигация

В журналах можно перемещаться помощью тех же ключевых команд, которые доступны в less:

КомандаДействие
, enter, e или jПереместитесь вниз на одну строку
, y или kПереместитесь на одну строку вверх
spaceПереместитесь на одну страницу вниз
bПереместитесь на одну страницу вверх
Прокрутите страницу вправо по горизонтали
Прокрутите горизонтально влево
gПерейдите на первую строку
GПерейдите к последней строке
qВыйти из less

Просмотр без разбивки на страницы

Чтобы отправлять логи на стандартный вывод и не разбивать их на страницы, используйте опцию:

  • --no-pager:
1
journalctl --no-pager

Не рекомендуется делать это без предварительной фильтрации отображаемых журналов.

Просмотр новых сообщений

Чтобы просмотреть журнал новых сообщений в режиме реального времени по мере их поступления, используйте опцию:

  • -f:
1
journalctl -f

В этом режиме недоступны основные команды из less, нажмите Control-C на клавиатуре, чтобы вернуться в командную строку.

Использование фильтров

Помимо поиска в журналах, можно использовать journalctl с опеределенными параметрами, которые фильтруют сообщения журнала перед их отображением.

Фильтры можно использовать как с обычным постраничным отображением, так и с параметрами --no-pager и -f, а так же фильтры разных типов можно комбинировать, чтобы ещё больше сузить область вывода.

За определённый период

Используйте параметр --since для отображения журналов за указанную дату и время:

1
journalctl --since "2025-11-01 14:10:10"

Используйте параметр --until для отображения журналов за указанный период времени:

1
journalctl --until "2025-11-01 12:05:50"

Объедините их, чтобы отобразить логи за указанный период:

1
journalctl --since "2025-10-30 14:10:10" --until "2025-11-01 12:05:50"

Даты и время должны быть указаны в YYYY-MM-DD HH:MM:SS формате. Если время опущено (т. е. указана только YYYY-MM-DD дата), то предполагается, что время равно 00:00:00.

Альтернативные форматы

При указании дат journalctl также может принимать некоторые альтернативные форматы:

  • yesterday, today, tomorrow (при использовании одного из этих терминов время считается равным 00:00:00)
  • 1 day ago или 3 hours ago
  • - и + можно использовать для указания относительных дат. Например:
    • -1h15min — 1 час 15 минут назад
    • +3h30min — 3 часа 30 минут в будущем

Просмотр журналы загрузок

Используйте параметр -b для отображения журналов последней загрузки вашего сервера:

1
journalctl -b

Укажите целочисленное смещение для параметра -b для перехода к предыдущей загрузке. Например, journalctl -b -1 показывает журналы предыдущей загрузки, journalctl -b -2 показывает журналы загрузки, предшествующей предыдущей загрузке и т.д.

Доступные загрузки:

1
journalctl --list-boots

Пример вывода:

1
2
3
4
IDX BOOT ID                          FIRST ENTRY                 LAST ENTRY
 -2 69f4171e0cee4a3b8fce9cab1ea3d018 Mon 2025-08-25 13:25:06 UTC Mon 2025-08-25 13:31:26 UTC
 -1 b5bce91962e24b93932dc106740b8dfe Wed 2025-10-29 10:39:30 UTC Wed 2025-10-29 14:03:51 UTC
  0 bbc21f1d26674cd1885ec0ddc5077227 Wed 2025-10-29 14:03:53 UTC Sat 2025-11-01 08:33:34 UTC

Идентификатор загрузки можно указать с помощью опции -b; например:

1
journalctl -b a09dce7b2c1c458d861d7d0f0a7c8c65

Если в списке нет предыдущих загрузок, возможно в вашей конфигурации journald не настроено постоянное хранение журналов.

Показать логи службы systemd

Укажите имя модуля systemd с помощью опции -u, чтобы отобразить журналы для этого сервиса:

1
journalctl -u ssh

Просмотр сообщений ядра

Укажите параметр -k для отображения только сообщений ядра:

1
journalctl -k
Авторский пост защищен лицензией CC BY 4.0 .

Популярные теги