Гид по технологиям

Как просматривать и записывать системные журналы в Ubuntu

• 5 min read • Linux • Обновлено 10 Dec 2025
Системные журналы Ubuntu: просмотр и запись
Системные журналы Ubuntu: просмотр и запись

Как просматривать и записывать системные журналы в Ubuntu

Быстрые ссылки

  • Просмотр логов графически
  • Запись в системный журнал
  • Просмотр логов в терминале

Linux записывает множество событий на диск. Большинство журналов хранится в /var/log в виде текстовых файлов. Записи обычно проходят через демон системного логирования и пишутся в системный журнал (syslog). Ubuntu предоставляет несколько способов просмотра этих файлов: графические средства и командная строка. Вы также можете отправлять свои сообщения в системный журнал — полезно для скриптов и автоматизации.

Просмотр логов графически

Чтобы открыть журналы удобным графическим приложением, запустите Log File Viewer из Dash или меню приложений.

Запуск Log File Viewer из Dash

Log File Viewer по умолчанию показывает системный журнал (syslog), журнал менеджера пакетов (dpkg.log), журнал аутентификации (auth.log) и журнал графического сервера (Xorg.0.log). Все логи можно видеть в одном окне: когда появляется новое событие, оно автоматически добавляется и выделяется жирным. Нажмите Ctrl+F для поиска или используйте меню «Фильтры» для отбора записей.

Log File Viewer — список журналов и события

Если нужно открыть специфичный лог (например, лог приложения), выберите File → Open и укажите файл. Он появится в списке и будет автоматически мониториться, как и другие журналы.

Открытие отдельного файла журнала в просмотрщике

Важно: графический просмотрщик удобен для быстрого анализа, но при большом объёме событий или при работе по SSH удобнее использовать терминал.

Запись в системный журнал

Утилита logger позволяет быстро отправить сообщение в системный журнал одной командой. Это удобно внутри скриптов и для пометок в логах при автоматизации.

Пример простого сообщения:

logger "Hello World"

Пример команды logger в терминале

Если хотите указывать источник сообщения (например, имя скрипта), используйте опцию –t:

logger --t ScriptName "Hello World"

Пример logger с --t для имени скрипта

Полезные опции logger:

  • -p priority — задать приоритет (facility.level), например user.info
  • -t tag — прикрепить тег (короткое имя источника)
  • -s — продублировать сообщение в stderr

Примеры:

logger -p user.notice -t myscript "Задача завершена"
logger -s -t deploy "Ошибка на этапе деплоя"

Просмотр логов в терминале

Команда dmesg показывает буфер сообщений ядра, который хранится в памяти. Выполнение отдаст много строк.

dmesg

Вывод dmesg в терминале

Чтобы отфильтровать вывод, передайте его в grep:

dmesg | grep something

Для постраничного просмотра используйте less. Нажмите Q для выхода:

dmesg | less

Просмотр вывода dmesg через less

Если grep возвращает много результатов, можно объединить с less:

dmesg | grep something | less

Кроме того, вы можете открывать файлы из /var/log в любом редакторе или выводить их содержимое командами cat, head, tail:

cat /var/log/syslog

Для фильтрации и постраничного просмотра используйте grep и less:

grep something /var/log/syslog | less

head и tail полезны для показа начала и конца файла. tail особенно удобен для подписки на новые записи (опция -f):

head -n 10 /var/log/syslog
tail -n 10 /var/log/syslog
tail -f /var/log/syslog

Примеры вывода head/tail для /var/log/syslog

Многие приложения пишут собственные логи в подкаталоги /var/log. Например, Apache обычно использует /var/log/apache2. Для точного расположения смотрите конфигурацию приложения.

Чек-лист при расследовании проблемы

  • Определите, какой компонент вызывает событие (ядро, служба, приложение).
  • Откройте соответствующий лог в /var/log или используйте dmesg для ошибок ядра.
  • Отфильтруйте по времени и уровню важности (grep, journalctl, если systemd).
  • Отслеживайте обновления в реальном времени (tail -f).
  • Зафиксируйте запись в отдельный файл, добавьте метку через logger.

Быстрый справочник команд

  • Просмотр буфера ядра: dmesg
  • Поиск в dmesg: dmesg | grep <шаблон>
  • Постраничный просмотр: less
  • Вывод файла: cat /var/log/<файл>
  • Первые N строк: head -n N /var/log/<файл>
  • Последние N строк: tail -n N /var/log/<файл>
  • Подписка на файл: tail -f /var/log/<файл>
  • Запись в журнал: logger -t <тег> “сообщение”

Методика: как быстро локализовать событие

  1. Определите примерное время инцидента.
  2. Ищите записи в syslog и auth.log вокруг этого времени.
  3. Используйте grep по ключевым словам (error, fail, panic, segfault).
  4. Проверьте отдельные сервисы (systemctl status ) и их логи в /var/log.
  5. Повторите с фильтрами по PID или тегу, если известно.

Когда этот подход не сработает

  • Если приложение пишет логи в нестандартное место — проверьте конфигурации.
  • Если логи ротацированы и старые файлы сжаты (.gz) — используйте zgrep или распакуйте.
  • Если система использует systemd journal без пересылки в /var/log — используйте journalctl.

Пример для journalctl:

journalctl -u nginx.service --since "2025-01-01" --no-pager

Примечание: в новых релизах Ubuntu многие службы регистрируют логи через systemd-journald. journalctl предоставляет мощные фильтры по юнитам, приоритетам и времени.

Ролевые чек-листы

Администратор:

  • Проверить /var/log/syslog, auth.log и daemon.log.
  • Просмотреть systemctl status для подозрительных сервисов.
  • Настроить ротацию логов (logrotate) и мониторинг.

Разработчик:

  • Локально воспроизвести проблему и добавить логирование через logger или лог-фреймворк.
  • Проверить, не теряются ли логи при ротации.

SRE/Операции:

  • Настроить централизованный сбор логов (rsyslog, syslog-ng, fluentd, ELK).
  • Настроить алерты по уровням и шаблонам ошибок.

Критерии приёмки

  • Можно воспроизвести ошибку и найти соответствующую запись в логах.
  • Сообщения имеют достаточный контекст (метки, PID, время).
  • Логи ротацированы и сохраняются в соответствии с политикой.

Безопасность и конфиденциальность

Не записывайте в логи чувствительные данные (пароли, персональные данные). При централизованном сборе логов шифруйте канал и ограничьте доступ к хранилищу.

Мини‑глоссарий (1 строка на термин)

  • syslog — общий системный журнал для сообщений от демонов и приложений.
  • dmesg — буфер сообщений ядра, хранится в памяти.
  • journalctl — просмотрщик журналов systemd-journald.
  • logger — утилита для отправки сообщений в системный журнал.

Советы по миграции и совместимости

Если вы переходите между версиями Ubuntu или дистрибутивами, проверьте, используется ли rsyslog или systemd-journald, и адаптируйте команды (cat /var/log vs journalctl). Для распределённых систем настройте централизованный стек логирования.

Заключение

Просмотр и запись системных журналов — базовый навык для диагностики в Ubuntu. Используйте графические инструменты для быстрого анализа и командную строку для гибкого и автоматизируемого подхода. logger помогает помечать события из скриптов, а комбинация grep/less/tail делает работу с большими логами удобной.

Ключевые команды: dmesg, journalctl, tail -f, grep, logger.

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

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро