journalctl - команда для вывода логов из журнала systemd, который содержит информацию о системных событыих и процессах Без каких-либо параметров эта команда выведет все записи из всех журналов, включая ошибки и предупреждения с момента запуска системы. Старые записи - сверху, новые - снизу ФИЛЬТРАЦИЯ ПО ВАЖНОСТИ Система записывает события с различными уровнями важности. Для каждого уровня существует свой код: 0. emerg - ужас и кошмар 1. alert - ошибка, требующая срочного вмешательства 2. crit - критическое состояние 3. err - ошибки 4. warn - предупреждения 5. notice - уведомления 6. info - информация 7. debug - отладка $ journalctl -p 0 При указании кода важности, journalctl выводит все сообщения с этом кодом и выше. Также, вместо циферок можно использовать буквенные обозначения ХРАНЕНИЕ ЖУРНАЛОВ По умолчанию journalctl не сохраняет журналы и создает новые при каждом перезапуске системы. Чтобы настроить сохранение, необходимо в /etc/systemd/journald.conf указать следующий параметр: $ Storage=persistent Тогда все журналы будут сохраняться в /var/log/journal ЖУРНАЛ ПРОШЛОЙ ЗАГРУЗКИ Чтобы посмотреть список журналов для каждой загрузки, необходимо прописать $journalctl --list-boots Эта команда отобразит номер загрузки, ее айди, а также период (дату и время), в который система работала Чтобы посмотреть журнал предыдущей загрузки необходимо прописать $ journalctl -b -1 ЖУРНАЛ ЗА ОПРЕДЕЛЕННЫЙ ПЕРИОД ВРЕМЕНИ Так как journalctl сохраняет время работы сессии, можно указать момент времени, с которого будет выведен журнал. например: $ journalctl --since "2025-04-25 06:00:00" # с определенной даты и времени $ journalctl --since "2025-04-25" --until "2025-04-26 06:00:00" # с определенной даты по определеннную дату и время $ journalctl --since yesterday со вчера по сегодня $ journalctl -S 09:00 -U "2 hours ago" # с 9 утра до двух часов назад. поддерживается также second, minute, hour, day. week, month, year ЖУРНАЛЫ ДЛЯ ОПРЕДЕЛЕННОГО ПРИЛОЖЕНИЯ Просмотр сообщений от ядра: $ journalctl -k Фильтрация логов по сервису systemd: $ journalctl -u NetworkManager Логи приложения через исполняемый файл: $ journalctl /sbin/init Или через PID: $ journalctl _PID=1 ОПЦИИ ПРОСМОТРА Отслеживать новые сообщения: $ journalctl -f Перемотать журнал к последней записи: $ journalctl -e Новые логи сверху: $ journalctl -r Просмотр конкретного журнала: $ journalctl --file /var/log/journal/{bootID}/{название_журнала}.journal Просмотр журнала пользователя: $ journalctl --user {username} ОГРАНИЧЕНИЕ РАЗМЕРА И ОЧИСТКА Чтобы изменить максимальный объем, можно изменить параметр SystemMaxUse в /etc/systemd/journald.conf: $ SystemMaxUse=50M Удаление журналов, оставив только последние 50 Мб: $ journalctl --vacuum-size=50M Удаление журналов, оставив только записи за последние 7 дней: $ journalctl --vacuum-time=7d Удаление журналов, оставив только 5 файлов: $ journalctl --vacuum-files=5