Главная > Управление пакетами и системой > dmesg

dmesg: Проверка сообщений ядра

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

Обзор

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

Основные характеристики

  • Проверка сообщений при загрузке системы
  • Информация об обнаружении и инициализации оборудования
  • Диагностика загрузки драйверов и ошибок
  • Информация о панике ядра или сбоях
  • Мониторинг событий ядра в реальном времени (с использованием некоторых опций)

Основные опции

Команда dmesg предоставляет различные опции для управления и фильтрации вывода сообщений ядра.

Формат и управление выводом

Фильтрация сообщений

Сгенерированная команда:

Комбинируйте команды.

Описание:

`dmesg` Запускает команду.

Комбинируйте эти опции, чтобы виртуально выполнять команды с помощью ИИ.

Примеры использования

Демонстрирует различные способы использования команды dmesg для проверки сообщений ядра и фильтрации определенной информации.

Базовый вывод сообщений ядра

dmesg

Выводит все содержимое кольцевого буфера ядра.

Удобный для чтения вывод (пейджер и цвета)

dmesg -H

Перенаправляет вывод в пейджер и применяет цвета для улучшения прокрутки и читаемости.

Вывод с читаемыми временными метками

dmesg -T

Добавляет точные временные метки к сообщениям, чтобы было легче определить, когда они произошли.

Фильтрация сообщений, связанных с USB

dmesg | grep -i usb

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

Вывод сообщений уровня 'error'

dmesg -l err

Фильтрует и выводит только сообщения уровня 'err' из кольцевого буфера ядра.

Отслеживание новых сообщений ядра в реальном времени

dmesg -w

Немедленно выводит новые сообщения ядра на терминал по мере их возникновения. Полезно для мониторинга системы.

Советы и предостережения

dmesg является мощным инструментом диагностики, но важно освоить эффективные методы его использования из-за большого объема вывода.

Полезные комбинации

dmesg становится более мощным при использовании в сочетании с другими инструментами обработки текста, а не только самостоятельно.

  • `dmesg | less`: Просмотр вывода по страницам, если он слишком длинный
  • `dmesg | grep -i 'error|fail'`: Поиск сообщений об ошибках или сбоях
  • `dmesg -T | tail`: Просмотр последних нескольких сообщений ядра
  • `dmesg | head -n 20`: Просмотр первых 20 строк (обычно начальные сообщения при загрузке)

Предостережение: Очистка буфера (-c)

Опция `-c` очищает кольцевой буфер ядра, что может привести к потере важных журналов. Используйте эту опцию с осторожностью только для сбора сообщений с определенного момента времени в целях отладки.

Разница между dmesg и journalctl

dmesg отображает только сообщения из кольцевого буфера ядра, в то время как `journalctl` является более комплексным инструментом для управления и запроса всех системных журналов (ядра, служб, приложений и т. д.), записанных в журнал systemd. В современных системах `journalctl` может быть предпочтительнее.


Те же команды в категории