Введение

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

`dmesg` (диагностические сообщения) — это команда в большинстве Unix-подобных операционных систем, которая выводит буфер сообщений ядра. Вывод включает сообщения, генерируемые драйверами устройств.

Загрузка

При первоначальной загрузке компьютерная система загружает своё ядро в память. На этом этапе драйверы устройств, находящиеся в ядре, настраиваются для управления соответствующим оборудованием. Эти драйверы, а также другие элементы ядра, могут выдавать сообщения, информирующие о наличии модулей и значениях принятых параметров. (Возможно указание параметров загрузки, которые управляют уровнем детализации этих сообщений.) Процесс загрузки обычно происходит настолько быстро, что отдельные сообщения прокручиваются вверх по экрану до того, как оператор успеет их прочитать и осмыслить. Данная команда позволяет просматривать эти сообщения в контролируемом режиме после запуска системы.

После загрузки

Даже после полной загрузки системы ядро может время от времени выдавать дополнительные диагностические сообщения. Типичные примеры, когда это может произойти, – это ошибки устройств ввода-вывода или подключение USB-устройств на ходу. Утилита dmesg предоставляет возможность просмотреть эти сообщения позже. Первоначально они выводятся на системную консоль. Если консоль занята, эти сообщения могут смешиваться с выводом пользовательских программ или быстро перезаписываться им.

Выпуск

Вывод команды dmesg может занимать множество полных экранов. Поэтому этот вывод обычно просматривают с помощью стандартных инструментов обработки текста, таких как more, tail, less или grep. Размер буфера dmesg ограничен, и вывод часто сохраняется в постоянный системный лог-файл посредством демона логирования, например syslog.

Формат

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