Когда в Linux что-то не запускается, падает, смотрим — journalctl.
Рассмотрим основные команды и приемы, который облегчат поиск и анализ причин.
- Немного теории, убедимся, что журналирование системы работает.
- Смотрим что и с чем случилось.
- Полезные приемы
1. Немного теории
Обычно журнал доступен не только root пользователю, но чтобы видеть все журналы рекомендую смотреть под root .
sudo su
journalctl
Вывод будет все записи с момента загрузки.
Подайте команду, чтобы убедиться что журнал пишется. Ниже команда и ожидаемая выдача:
journalctl --list-boots
# journalctl --list-boots
0 242c78b5661942359014d71653ccb029 Fri 2025-01-31 14:19:15 MSK—Mon 2025-02-03 19:02:14 MSK
Если Вы получили подобный список от 1 и более строк, значит журнал пишется.
Если строк нет, проверьте существование папки /var/log/journal:
ls -l /var/log/journal
Если вывод пустой, то создайте папку:
sudo mkdir /var/log/journal
2.Примеры использования
Приведу самые популярные полезные команды:
- Просмотр всех последних событий:
journalctl -e
- Просмотреть только по конкретному приложению, например redis :
journalctl -eu redis
- Посмотреть только за конкретное время:
journalctl -eu redis --since=today # за сегодня
journalctl -eu redis --since="2025-02-02 00:00" --until="2025-02-12 00:00" # произвольно с даты по дату
3. Полезные приемы использования
- Бывает часто, что сообщения не помещаются в одну строку экрана и по умолчанию журнал их не переносит.
Это параметр можно задать в профиле, но можно задать перед командой так:
SYSTEMD_LESS=FRXMK journalctl -eu redis
Еще часто Вы запускаете приложение и оно падает, чтобы видеть весь процесс запуска в журнале, можно сделать так:
systemctl restart redis && journalctl -eu redis -f
Добавить комментарий