DMESG(1)

НАЗВА
dmesg - виведення стану буфера кільцевої обробки ядра та керування ним.

КОРОТКИЙ ОПИС

dmesg [параметри]

dmesg --clear

dmesg --read-clear [параметри]

dmesg --console-level рівень

dmesg --console-on

dmesg --console-off

ОПИС

dmesg використовують для вивчення вмісту буфера кільцевої обробки ядра або керування ним.

Типовою дією є показ усіх повідомлень у буфері кільцевої обробки ядра.

ПАРАМЕТРИ

Параметри --clear, --read-clear, --console-on, --console-off і --console-level є взаємно виключними.

-C, --clear
    Спорожнити кільцевий буфер.

-c, --read-clear
    Спорожнити кільцевий буфер, спочатку вивівши його вміст.

-D, --console-off
    Вимкнути виведення повідомлень до консолі.

-d, --show-delta
    Вивести часову позначку та різницю часів між повідомленнями. Якщо використано разом із --notime, буде виведено лише різницю часу без часової позначки.

-E, --console-on
    Увімкнути виведення повідомлено до консолі.

-e, --reltime
    Вивести місцевий час і різницю часу у зручному для читання форматі. Зауважте, що перетворення до місцевого часу може бути неточним (див. -T, щоб дізнатися більше).

-F, --file файл
    Прочитати повідомлення syslog з вказаного файла. Зауважте, що для -F не передбачено підтримки повідомлень у форматі kmsg. Користуйтеся натомість -K.

-f, --facility список
    Обмежити виведення до вказаного (відокремленого комами) списку варіантів. Приклад:

    dmesg --facility=daemon

    виведе повідомлення лише для фонових служб системи. Щоб ознайомитися зі списком підтримуваних варіантів, скористайтеся параметром --help.

-H, --human
    Увімкнути зручне для читання виведення. Див. також --color, --reltime і --nopager.

-J, --json
    Використати для виведення даних формат JSON. Форматом виведення часу може бути лише «секунди.мілісекунди», рівень пріоритетності у журналі типово не буде декодовано (скористайтеся --decode, щоб розділити дані на варіант і пріоритетність), інші параметри керування форматом виведення або форматом часу буде без додаткових повідомлень проігноровано.

-K, --kmsg-file файл
    Read the /dev/kmsg messages from the given file. Different record as expected to be separated by a NULL byte.

-k, --kernel
    Виводити повідомлення ядра.

-L, --color[=умова]
    Розфарбувати виведені дані. Значенням додаткового аргументу варіант може бути auto, never або always. Якщо аргумент варіант пропущено, типовим значенням вважається auto. Розфарбовування можна вимкнути. Із поточним вбудованим типовим значенням можна ознайомитися за допомогою виведення команди з параметром --help. Див. також розділ КОЛЬОРИ нижче.

-l, --level список
    Обмежити виведення до вказаного (відокремленого комами) списку рівнів. Приклад:

    dmesg --level=err,warn

    виведе повідомлення лише щодо помилок і попереджень. Щоб ознайомитися зі списком підтримуваних рівнів, скористайтеся параметром --help.

    Appending a plus + to a level name also includes all higher levels. For example:

    dmesg --level=err+

    will print levels err, crit, alert and emerg.

    Prepending it will include all lower levels.

-n, --console-level рівень
    Встановити рівень, на якому виведення повідомлень відбуватиметься до консолі. Значенням рівень має бути номер рівня або абревіатура назви рівня. Щоб ознайомитися зі списокм підтримуваних рівнів, скористайтеся параметром --help.

    Наприклад, -n 1 або -n emerg забороняє виведення до консолі усіх повідомлень, окрім аварійних (панічних) повідомлень. Повідомлення усіх рівнів продовжуватимуть записуватися до /proc/kmsg, отже усе ще можна буде користуватися syslogd(8) для керування тим, де саме опинятимуться повідомлення ядра. Якщо використано параметр -n, dmesg не виводитиме вміст буфера кільцевої обробки ядра і не спорожнюватиме його.

--noescape
    Непридатні до друку і потенційно небезпечні символи (наприклад, пошкоджені багатобайтові послідовності, символи керування терміналом тощо) типово буде екрановано у форматі \x<шістнадцяткове число> з міркувань безпеки. Цей параметр вимикає цю можливість взагалі. Корисно, наприклад, для діагностики у поєднанні із --raw. Будьте обережні, не використовуйте цей режим типово.

-P, --nopager
    Не передавати каналом виведені дані до засобу поділу на сторінки. Засіб поділу на сторінки типово увімкнено для виведення --human.

-p, --force-prefix
    Додати дані щодо варіанта, рівня або часової позначки до кожного рядка у багаторядковому повідомленні.

-r, --raw
    Вивести буфер повідомлень без обробки, тобто не обрізати префікси рівня журналу, але усі непридатні до друку символи буде екрановано (див. також --noescape).

    Зауважте, що справжній формат без обробки залежить від способу, у який dmesg читає повідомлення ядра. Пристрій /dev/kmsg використовує інший формат, ніж syslog(2). З метою зворотної сумісності, dmesg завжди повертає дані у форматі syslog(2). Справжні необроблені дані з /dev/kmsg можна прочитати за допомогою, наприклад, команди «dd if=/dev/kmsg iflag=nonblock».

-S, --syslog
    Наказати dmesg використовувати інтерфейс ядра syslog(2) для читання повідомлень ядра. Типовим є використання /dev/kmsg, а не syslog(2), з часу появи версії ядра 3.5.0.

-s, --buffer-size розмір
    Використати буфер розміру розмір для опитування буфера кільцевої обробки ядра. Типовим значенням є 16392. (Типовий розмір буфера syslog ядра спочатку мав розмір 4096, 8192 з версії 1.3.54, 16384 з версії 2.1.113.) Якщо вами налаштовано буфер ядра із розміром, більшим за типовий для ядра розмір, за допомогою цього параметра можна буде переглядати увесь буфер.

-T, --ctime
    Виводити часові позначки у зручному для читання форматі.

    Пам’ятайте, що часова позначка може бути неточною! Джерело даних часу, яке використано для журналу, не оновлюється після ПРИСИПЛЯННЯ/ВІДНОВЛЕННЯ роботи системи. Часові позначки коригуються відповідно до поточної різниці між часом завантаження і монотонним годинником - це працює лише для повідомлень, які виведено після останнього відновлення роботи системи.

--since час
    Вивести записи, починаючи з вказаного моменту часу. Передбачено підтримку точності до часток секунди. Час можна вказати в абсолютний спосіб, а також у відносному позначенні (наприклад «1 hour ago»). Зауважте, що часові позначки можуть бути неточними. Докладніший опис можна знайти в описі параметра --ctime.

--until час
    Вивести записи до вказаного моменту часу. Передбачено підтримку точності до часток секунди. Час можна вказати в абсолютний спосіб, а також у відносному позначенні (наприклад «1 hour ago»). Зауважте, що часові позначки можуть бути неточними. Докладніший опис можна знайти в описі параметра --ctime.

-t, --notime
    Не виводити часові позначки ядра.

--time-format формат
    Виводити часові позначки з використанням вказаного формату, яким може бути ctime, reltime, delta, iso або raw. Перші три формати є альтернативами задання спеціалізованих варіантів форматування записів часу. Формат raw використовує типовий формат часової позначки, що показує секунди з часу завантаження. Формат iso є реалізацією у dmesg формату часових позначок ISO-8601. Метою використання цього формату є спрощення порівняння часових позначок у різних системах та іншої обробки даних. Визначення часової позначки iso є таким: РРРР-ММ-ДД<T>ГГ:ХХ:СС,<мікросекунди>←+><зсув часового поясу відносно UTC>.

    У формату iso є та сама вада, що і у ctime: час може бути неточним, якщо роботу системи було призупинено, а потім відновлено.

    --time-format may be used multiple times with different values for format to output each specified format.

    The delta always follows ctime or raw if specified together.

-u, --userspace
    Вивести повідомлення простору користувача.

-w, --follow
    Очікувати на нові повідомлення. Підтримку цієї можливості реалізовано лише у системах з придатним до читання /dev/kmsg (починаючи з версії ядра 3.5.0).

-W, --follow-new
    Очікувати на нові повідомлення та виводити лише їх.

-x, --decode
    Декодувати числові дані варіанта і рівня (пріоритетності) повідомлень у зручні до читання префікси.

-h, --help
    Вивести текст довідки і завершити роботу.

-V, --version
    Показати дані щодо версії і завершити роботу.

КОЛЬОРИ

Розфарбовування виведених даних реалізовано у можливості terminal-colors.d(5). Неявне розфарбовування може бути вимкнено спорожненням файла

    /etc/terminal-colors.d/{команда}.disable

для команди {команда} або для усіх інструментів

    /etc/terminal-colors.d/disable

Починаючи з версії 2.41, передбачено підтримку змінної середовища $NO_COLOR для вимикання розфарбовування виведених даних, якщо розфарбовування не буде явним чином увімкнено параметром командного рядка.

Специфічні для користувача $XDG_CONFIG_HOME/terminal-colors.d або $HOME/.config/terminal-colors.d мають пріоритет над загальними параметрами.

Зауважте, що можна типово увімкнути розфарбовування виведених даних і у цьому випадку каталоги terminal-colors.d не повинні існувати.

Логічними назвами кольорів, підтримку яких передбачено у dmesg, є такі:

subsys
    Префікс підсистеми повідомлень (наприклад, «ACPI:»).

time
    Часова позначка повідомлення.

timebreak
    Часова позначка у короткому форматі ctime у виведенні --reltime або --human.

alert
    Текст повідомлення із пріоритетністю сигналу тривоги у журналі.

crit
    Текст повідомлення із пріоритетністю критичної помилки у журналі.

err
    Текст повідомлення із пріоритетністю помилки у журналі.

warn
    Текст повідомлення із пріоритетністю попередження у журналі.

segfault
    Текст повідомлення, яке повідомлятиме про помилку сегментації.

СТАН ВИХОДУ

У dmesg можуть виникнути проблеми із звітуванням про помилку, яку пов’язано із правами доступу. Зазвичай, причиною є встановлення у ядрі dmesg_restrict. Будь ласка, зверніться до syslog(2), щоб дізнатися більше.

АВТОРИ

Першу версію dmesg було написано

ТАКОЖ ПЕРЕГЛЯНЬТЕ

terminal-colors.d(5), syslogd(8)

ЯК НАДІСЛАТИ ЗВІТ ПРО ВАДИ

Для звітування щодо вад скористайтеся

ДОСТУП ДО ПРОГРАМИ

Програма dmesg є частиною пакунка util-linux, який можна отримати з