Linux J001Средняя

Исправление ошибок journalctl в Linux: пошаговое решение проблем с логами

В этой статье рассматриваются распространенные ошибки journalctl, их причины и несколько проверенных способов решения, от простых проверок до перезапуска сервисов, с конкретными командами для Ubuntu, Debian и Fedora.

Обновлено 10 июля 2026 г.
5-10 мин
Средняя
FixPedia Team
Применимо к:Ubuntu 20.04, Ubuntu 22.04Debian 11, Debian 12Fedora 36+CentOS Stream 9

Что означает ошибка J001

Ошибка J001 — это условный код, используемый в этой статье для обозначения распространенных проблем с journalctl. Она может проявляться как:

  • No files found — journald не может найти файлы журнала.
  • Permission denied — недостаточно прав для чтения логов.
  • No logs to show — запрос не вернул результатов даже при корректных параметрах.

Эти сообщения обычно появляются, когда journalctl не может прочитать или отфильтровать данные в режиме реального времени, хранящиеся в /var/log/journal.

Причины возникновения

  1. Отсутствие директории журнала/var/log/journal удалена или не существует.
  2. Неправильные права доступа – пользователь systemd или root не может читать файлы журнала.
  3. Повреждение файлов журнала – файлы .journal повреждены или имеют неподдерживаемый формат.
  4. Неправильные параметры фильтрации – используются некорректные единицы измерения, даты или сервисы.
  5. Ограничения дискового пространства – журнал автоматически очищается, если диск переполнен.
  6. Сервис journald не запущен – процесс systemd-journald остановлен или завис.

Способы решения

Способ 1: Проверьте наличие и права доступа к журналам

Сначала убедитесь, что директория журналов существует и содержит файлы.

ls -la /var/log/journal

Если директория отсутствует, создайте ее:

sudo mkdir -p /var/log/journal
sudo chown -R systemd:systemd /var/log/journal
sudo chmod 755 /var/log/journal

Способ 2: Перезапустите systemd-journald

Иногда сервис зависает и прекращает запись логов.

sudo systemctl restart systemd-journald

После перезапуска проверьте, появились ли новые записи:

journalctl -b -1 | head

Способ 3: Принудительно запишите буфер в файл

Если файл журнала не записывается на диск, используйте --flush и --sync.

sudo journalctl --flush --sync

Теперь попробуйте прочитать логи только с диска:

sudo journalctl --disk-only -u systemd

Способ 4: Используйте альтернативный метод фильтрации

Если обычный запрос journalctl не возвращает результатов, попробуйте более точные фильтры:

journalctl _SYSTEMD_UNIT=ssh.service --since="2026-01-01"

Вы также можете объединить несколько параметров:

journalctl -b -1 -u NetworkManager -p err

Способ 5: Чтение файлов журнала напрямую

Когда journald серьезно поврежден, скопируйте файлы .journal на рабочую станцию и используйте journalctl для их анализа.

# Скопируйте файлы на локальную машину (пример для Ubuntu)
scp user@host:/var/log/journal/*/*.journal ~/journal_backup/
cd ~/journal_backup
for f in *.journal; do
  echo "=== $f ==="
  sudo journalctl -o short-iso "$f"
done

Профилактика

  • Регулярная проверка дискового пространстваdf -h /var и очистка старых журналов командой sudo journalctl --vacuum-time=7days.
  • Соблюдайте права доступа – убедитесь, что /var/log/journal принадлежит systemd:systemd и имеет права 755.
  • Используйте ротацию логов – включите LogRotate для файлов /var/log/journal/*.
  • Мониторинг целостности – периодически проверяйте файлы журнала с помощью journalctl --verify.
  • Резервное копирование – создавайте копии /var/log/journal перед крупными обновлениями или перезагрузками.

Эти шаги помогут избежать повторного возникновения ошибки J001 и обеспечат стабильную работу journalctl в будущем.

Часто задаваемые вопросы

Почему journalctl не показывает логи после перезагрузки системы?
Что делать, если journalctl выдает ошибку «No files found»?
Как отфильтровать логи journalctl по определенному сервису?
Как сохранить вывод journalctl в файл?

Полезное

Проверьте наличие журналов
Проверьте права доступа и владельца
Перезапустите сервис journald
Принудительно очистите и считайте логи с диска
Используйте альтернативный путь: чтение файлов напрямую