Команда dmesg
— это утилита Linux, которая отображает связанные с ядром сообщения, извлечённые из кольцевого буфера ядра.
Кольцевой буфер хранит информацию об оборудовании, инициализации драйверов устройств и сообщения от модулей ядра, которые происходят во время запуска системы.
Содержание
Синтаксис
$ dmesg [параметры]
Основные параметры
- -C, --clear
- Очистить кольцевой буфер ядра
- -c, --read-clear
- Читать и удалять все сообщения
- -D, --console-off
- Отключить вывод сообщений на консоль
- -E, --console-on
- Включить печать сообщений на консоль
- -F, --file <file>
- Использовать файл вместо буфера журнала ядра
- -f, --facility <list>
- Ограничить вывод на определённые объекты
- -H, --human
- Человекочитаемый вывод
- -J, --json
- Использовать выходной формат JSON
- -k, --kernel
- Отображать сообщения ядра
- -L, --color[=<when>]
- Раскрашивать сообщения (авто, всегда или никогда). Цветной шрифт по умолчанию поддерживается
- -l, --level <list>
- Ограничить вывод до определенных уровней
- -n, --console-level <level>
- Установить уровень сообщений, выводимых на консоль
- -P, --nopager
- Не передавать вывод на пейджер
- -p, --force-prefix
- Принудительно выводить временную метку в каждой строке многострочных сообщений
- -r, --raw
- Распечатать буфер необработанных сообщений
- --noescape
- Не экранировать непечатаемый символ
- -S, --syslog
- Заставить использовать
syslog
(2) вместо/dev/kmsg
- -s, --buffer-size <size>
- Размер буфера для запроса кольцевого буфера ядра
- -u, --userspace
- Отображать сообщения пользовательского пространства
- -w, --follow
- Ожидать новых сообщений
- -W, --follow-new
- Ожидать и печатать только новые сообщения
- -x, --decode
- Средство декодирования и уровень для читаемой строки
- -d, --show-delta
- Показать разницу во времени между распечатанными сообщениями
- -e, --reltime
- Показать местное время и дельту времени в удобочитаемом формате
- -T, --ctime
- Показать удобочитаемую временную метку (может быть неточной!)
- -t, --notime
- Не показывать метку времени с сообщениями
- --time-format <format>
- Показать временную метку, используя заданный формат: [delta|reltime|ctime|notime|iso]
- --since <time>
- Отображать строки с указанного времени
- --until <time>
- Отображать строки до указанного времени
- -h, --help
- Показать справку
Использование команды dmesg в Linux
Вывод всех сообщений ядра
Вызов dmesg
без каких-либо опций выводит весь буфер ядра, без остановок и без возможности навигации по выходным данным:
oleg@mobile:~:$ sudo dmesg
[ 0.000000] Linux version 6.2.12-arch1-1 (linux@archlinux) (gcc (GCC) 12.2.1 20230201, GNU ld (GNU Binutils) 2.40) #1 SMP PREEMPT_DYNAMIC Thu, 20 Apr 2023 16:11:55 +0000
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=6d031569-0134-4713-9cb8-4f55968dc362 rw loglevel=3 quiet
[ 0.000000] Disabled fast string operations
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[ 0.000000] x86/fpu: Enabled xstate features 0x3, context size is 576 bytes, using 'standard' format.
[ 0.000000] signal: max sigframe size: 1520
[ 0.000000] reserving inaccessible SNB gfx pages
[ 0.000000] BIOS-provided physical RAM map:
[ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009d7ff] usable
[ 0.000000] BIOS-e820: [mem 0x000000000009d800-0x000000000009ffff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000000e0000-0x00000000000fffff] reserved
[ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000007a3eefff] usable
[ 0.000000] BIOS-e820: [mem 0x000000007a3ef000-0x000000007a6eefff] reserved
[ 0.000000] BIOS-e820: [mem 0x000000007a6ef000-0x000000007a79efff] ACPI NVS
[ 0.000000] BIOS-e820: [mem 0x000000007a79f000-0x000000007a7fefff] ACPI data
...
[12582.994724] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[12995.885219] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[12995.984099] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[13408.872518] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[13408.968989] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[13821.865889] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[13821.962125] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[14234.860330] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[14234.958784] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
oleg@mobile:~:$
В приведённом примере показан лишь частичный вывод команды dmesg
. Для упрощения навигации и лучшей читабельности можно передать вывод dmesg
в пейджер терминала (less
, more
) или использовать grep
.
Пример:
oleg@mobile:~:$ sudo dmesg | less
[ 0.000000] Linux version 6.2.12-arch1-1 (linux@archlinux) (gcc (GCC) 12.2.1 20230201, GNU ld (GNU Binutils) 2.40) #1 SMP PREEMPT_DYNAMIC Thu, 20 Apr 2023 16:11:55 +0000
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=6d031569-0134-4713-9cb8-4f55968dc362 rw loglevel=3 quiet
[ 0.000000] Disabled fast string operations
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
[ 0.000000] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[ 0.000000] x86/fpu: Enabled xstate features 0x3, context size is 576 bytes, using 'standard' format.
[ 0.000000] signal: max sigframe size: 1520
[ 0.000000] reserving inaccessible SNB gfx pages
[ 0.000000] BIOS-provided physical RAM map:
[ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009d7ff] usable
[ 0.000000] BIOS-e820: [mem 0x000000000009d800-0x000000000009ffff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000000e0000-0x00000000000fffff] reserved
[ 0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000007a3eefff] usable
[ 0.000000] BIOS-e820: [mem 0x000000007a3ef000-0x000000007a6eefff] reserved
[ 0.000000] BIOS-e820: [mem 0x000000007a6ef000-0x000000007a79efff] ACPI NVS
[ 0.000000] BIOS-e820: [mem 0x000000007a79f000-0x000000007a7fefff] ACPI data
[ 0.000000] BIOS-e820: [mem 0x000000007a7ff000-0x000000007a7fffff] usable
[ 0.000000] BIOS-e820: [mem 0x000000007a800000-0x000000007f1fffff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000f8000000-0x00000000fbffffff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000fec00000-0x00000000fec00fff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000fed08000-0x00000000fed08fff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000fed10000-0x00000000fed19fff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000fed1c000-0x00000000fed1ffff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000fee00000-0x00000000fee00fff] reserved
[ 0.000000] BIOS-e820: [mem 0x00000000ffd80000-0x00000000ffffffff] reserved
[ 0.000000] BIOS-e820: [mem 0x0000000100000000-0x00000001005fffff] usable
[ 0.000000] NX (Execute Disable) protection: active
[ 0.000000] SMBIOS 2.6 present.
[ 0.000000] DMI: SAMSUNG ELECTRONICS CO., LTD. 300E4A/300E5A/300E7A/3430EA/3530EA/300E4A/300E5A/300E7A/3430EA/3530EA, BIOS 09QA 11/02/2012
[ 0.000000] tsc: Fast TSC calibration using PIT
:
Конвейер dmesg
в less
позволяет использовать функцию поиска и выделения элементов. Для активирования поиска, следует нажать /
. Переход к следующему экрану производится с помощью клавиши Space, а переход к предыдущему — b. Для выхода надо нажать клавишу q.
Вывод цветных сообщений
По умолчанию dmesg
имеет цветной вывод. При отсутствии окраски вывода использованием параметра -L
можно его окрасить:
oleg@mobile:~:$ sudo dmesg -L
Для отключения цветного вывода утилита используется с параметром --color=never
:
oleg@mobile:~:$ sudo dmesg --color=never
Вывод поступающих сообщений
Отследить кольцевой буфер ядра в режиме реального времени можно с помощью параметра --follow
:
oleg@mobile:~:$ sudo dmesg --follow
Команда dmesg
отображает любые новые сообщения в нижней части окна терминала. Для остановки процесса нажимаются клавиши Ctrl + C.
Поиск определённого термина
При поиске конкретных проблем или аппаратных сообщений вывод команды dmesg
передаётся в grep
для поиска определённой строки или шаблона.
Пример поиска сообщений о памяти:
oleg@mobile:~:$ sudo dmesg | grep -i memory
[ 0.016219] ACPI: Reserving FACP table memory at [mem 0x7a7f0000-0x7a7f00f3]
[ 0.016221] ACPI: Reserving DSDT table memory at [mem 0x7a7f3000-0x7a7fafe2]
[ 0.016223] ACPI: Reserving FACS table memory at [mem 0x7a73d000-0x7a73d03f]
[ 0.016224] ACPI: Reserving FACS table memory at [mem 0x7a73d000-0x7a73d03f]
[ 0.016225] ACPI: Reserving SLIC table memory at [mem 0x7a7fd000-0x7a7fd175]
[ 0.016227] ACPI: Reserving SSDT table memory at [mem 0x7a7fb000-0x7a7fc067]
[ 0.016228] ACPI: Reserving ASF! table memory at [mem 0x7a7f2000-0x7a7f20a4]
[ 0.016230] ACPI: Reserving HPET table memory at [mem 0x7a7ef000-0x7a7ef037]
[ 0.016231] ACPI: Reserving APIC table memory at [mem 0x7a7ee000-0x7a7ee097]
[ 0.016233] ACPI: Reserving MCFG table memory at [mem 0x7a7ed000-0x7a7ed03b]
[ 0.016234] ACPI: Reserving SSDT table memory at [mem 0x7a7ec000-0x7a7ec90b]
[ 0.016236] ACPI: Reserving SSDT table memory at [mem 0x7a7eb000-0x7a7eb995]
[ 0.016237] ACPI: Reserving UEFI table memory at [mem 0x7a7ea000-0x7a7ea03d]
[ 0.016239] ACPI: Reserving UEFI table memory at [mem 0x7a7e9000-0x7a7e9041]
[ 0.016240] ACPI: Reserving UEFI table memory at [mem 0x7a7e8000-0x7a7e8219]
[ 0.016351] Early memory node ranges
[ 0.024454] Reserving Intel graphics memory at [mem 0x7b200000-0x7f1fffff]
...
[ 0.075863] Memory: 1840720K/2008624K available (16384K kernel code, 2097K rwdata, 12576K rodata, 3276K init, 4100K bss, 167644K reserved, 0K cma-reserved)
[ 0.133953] Freeing SMP alternatives memory: 40K
[ 0.137020] x86/mm: Memory block size: 128MB
[ 0.257029] Non-volatile memory driver v1.3
[ 0.346435] Freeing initrd memory: 13488K
[ 1.612166] Freeing unused decrypted memory: 2036K
[ 1.614069] Freeing unused kernel image (initmem) memory: 3276K
[ 1.615747] Freeing unused kernel image (rodata/data gap) memory: 1760K
[ 16.892877] i2c i2c-7: 1/4 memory slots populated (from DMI)
oleg@mobile:~:$
Выводятся все строки из буфера, содержащие строку памяти.
Аналогично можно получать буферные сообщения о USB, портах, сети или жёстких дисках. Для этого выполняются следующие команды.
USB:
oleg@mobile:~:$ sudo dmesg | grep -i usb
Serial Ports:
oleg@mobile:~:$ sudo dmesg | grep -i tty
Network:
oleg@mobile:~:$ sudo dmesg | grep -i eth
Hard Drives:
oleg@mobile:~:$ sudo dmesg | grep -i sda
Можно осуществлять поиск и нескольких условий, добавляя параметр -E
:
oleg@mobile:~:$ sudo dmesg | grep -E "memory|tty"
Чтение и очистка журналов
Запуск утилиты dmesg
с параметром -c
позволяет очистить журнал dmesg
после его печати. Очистка буфера гарантирует получение только действительных сообщений от последней перезагрузки:
oleg@mobile:~:$ sudo dmesg -c
Включение временных меток в журналах
Для включения временных меток в выводе dmesg
утилита запускается с параметром -H
, создающим удобочитаемый вывод:
oleg@mobile:~:$ sudo dmesg -H
Команда dmesg
добавляет метку времени с указанием даты и времени в минутах. Для выхода из пейджера нажимается клавиша q.
Включение удобочитаемых временных меток
Для удаления наносекундной точности и облегчения отслеживания меток времени команда dmesg
используется с параметром -T
:
oleg@mobile:~:$ sudo dmesg -T
Для выбора формата используется параметр --time-format
со следующими доступными форматами метки времени:
- ctime
- reltime
- delta
- notime
- iso
Например, при использовании формата ctime
команда dmesg
запускается так:
oleg@mobile:~:$ sudo dmesg --time-format=ctime
[Вс апр 30 06:20:33 2023] Linux version 6.2.12-arch1-1 (linux@archlinux) (gcc (GCC) 12.2.1 20230201, GNU ld (GNU Binutils) 2.40) #1 SMP PREEMPT_DYNAMIC Thu, 20 Apr 2023 16:11:55 +0000
[Вс апр 30 06:20:33 2023] Command line: BOOT_IMAGE=/boot/vmlinuz-linux root=UUID=6d031569-0134-4713-9cb8-4f55968dc362 rw loglevel=3 quiet
[Вс апр 30 06:20:33 2023] Disabled fast string operations
[Вс апр 30 06:20:33 2023] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
[Вс апр 30 06:20:33 2023] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[Вс апр 30 06:20:33 2023] x86/fpu: Enabled xstate features 0x3, context size is 576 bytes, using 'standard' format.
[Вс апр 30 06:20:33 2023] signal: max sigframe size: 1520
[Вс апр 30 06:20:33 2023] reserving inaccessible SNB gfx pages
[Вс апр 30 06:20:33 2023] BIOS-provided physical RAM map:
[Вс апр 30 06:20:33 2023] BIOS-e820: [mem 0x0000000000000000-0x000000000009d7ff] usable
[Вс апр 30 06:20:33 2023] BIOS-e820: [mem 0x000000000009d800-0x000000000009ffff] reserved
[Вс апр 30 06:20:33 2023] BIOS-e820: [mem 0x00000000000e0000-0x00000000000fffff] reserved
[Вс апр 30 06:20:33 2023] BIOS-e820: [mem 0x0000000000100000-0x000000007a3eefff] usable
[Вс апр 30 06:20:33 2023] BIOS-e820: [mem 0x000000007a3ef000-0x000000007a6eefff] reserved
[Вс апр 30 06:20:33 2023] BIOS-e820: [mem 0x000000007a6ef000-0x000000007a79efff] ACPI NVS
[Вс апр 30 06:20:33 2023] BIOS-e820: [mem 0x000000007a79f000-0x000000007a7fefff] ACPI data
[Вс апр 30 06:20:33 2023] BIOS-e820: [mem 0x000000007a7ff000-0x000000007a7fffff] usable
[Вс апр 30 06:20:33 2023] BIOS-e820: [mem 0x000000007a800000-0x000000007f1fffff] reserved
...
[Вс апр 30 11:13:36 2023] IPv6: ADDRCONF(NETDEV_CHANGE): wlan1: link becomes ready
[Вс апр 30 11:19:44 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 11:19:44 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 11:26:37 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 11:26:37 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 11:33:30 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 11:33:30 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 11:40:23 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 11:40:23 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 11:47:16 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 11:47:16 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 11:54:09 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 11:54:09 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 12:01:02 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
[Вс апр 30 12:01:02 2023] iwlwifi 0000:01:00.0: Radio type=0x2-0x2-0x1
oleg@mobile:~:$
Формат метки времени теперь YYYY-MM-DD<T>HH:MM:SS, <microseconds>←+><timezone offset from UTC>.
Ограничение вывода dmesg для определённого объекта
Можно отфильтровать вывод dmesg по определённой категории, используя параметр -f
.
Сообщения будут сгруппированы в кольцевом буфере ядра по следующим категориям:
- kern
- Сообщения ядра
- user
- Сообщения на уровне пользователя
- Сообщения почтовой системы
- daemon
- Сообщения о системных демонах
- auth
- Сообщения авторизации
- syslog
- Внутренние сообщения
syslogd
- lpr
- Сообщения подсистемы построчного принтера
- news
- Сообщения подсистемы сетевых новостей
Например, следующая команда ограничивает вывод сообщениями, относящимися к средству системного журнала:
oleg@mobile:~:$ sudo dmesg -f syslog
[ 9.989387] systemd-journald[172]: Collecting audit messages is disabled.
[ 10.468794] systemd-journald[172]: Received client request to flush runtime journal.
[ 11.283951] systemd-journald[172]: /var/log/journal/526d2df7f831402999d7d78f92740820/system.journal: Monotonic clock jumped backwards relative to last journal entry, rotating.
[ 11.283979] systemd-journald[172]: Rotating system journal.
[ 51.945074] systemd-journald[172]: Time jumped backwards, rotating.
oleg@mobile:~:$
Чтобы перечислить сообщения от более чем одного объекта, указывается список объектов, разделённых запятыми:
oleg@mobile:~:$ sudo dmesg -f syslog,daemon
[ 6.647848] systemd[1]: systemd 253.3-3-arch running in system mode (+PAM +AUDIT -SELINUX -APPARMOR -IMA +SMACK +SECCOMP +GCRYPT +GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +LIBCRYPTSETUP +LIBFDISK +PCRE2 -PWQUALITY +P11KIT -QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD +BPF_FRAMEWORK +XKBCOMMON +UTMP -SYSVINIT default-hierarchy=unified)
[ 6.647872] systemd[1]: Detected architecture x86-64.
[ 6.682183] systemd[1]: Hostname set to <mobile>.
[ 7.423036] systemd[1]: bpf-lsm: LSM BPF program attached
[ 9.681271] systemd[1]: Queued start job for default target Graphical Interface.
[ 9.712515] systemd[1]: Created slice Slice /system/getty.
[ 9.713919] systemd[1]: Created slice Slice /system/modprobe.
[ 9.715006] systemd[1]: Created slice Slice /system/systemd-fsck.
[ 9.715932] systemd[1]: Created slice User and Session Slice.
[ 9.716204] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
[ 9.716418] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[ 9.717014] systemd[1]: Set up automount Arbitrary Executable File Formats File System Automount Point.
[ 9.717194] systemd[1]: Reached target Local Encrypted Volumes.
[ 9.717270] systemd[1]: Reached target Local Integrity Protected Volumes.
[ 9.717354] systemd[1]: Reached target Path Units.
[ 9.717410] systemd[1]: Reached target Remote File Systems.
[ 9.717470] systemd[1]: Reached target Slice Units.
[ 9.717561] systemd[1]: Reached target Local Verity Protected Volumes.
[ 9.717817] systemd[1]: Listening on Device-mapper event daemon FIFOs.
[ 9.734231] systemd[1]: Listening on LVM2 poll daemon socket.
[ 9.752965] systemd[1]: Listening on Process Core Dump Socket.
...
[ 10.062498] systemd[1]: Finished Remount Root and Kernel File Systems.
[ 10.063369] systemd[1]: Mounted Huge Pages File System.
[ 10.063510] systemd[1]: Mounted Kernel Debug File System.
[ 10.063641] systemd[1]: Mounted FUSE Control File System.
[ 10.063888] systemd[1]: First Boot Wizard was skipped because of an unmet condition check (ConditionFirstBoot=yes).
[ 10.091208] systemd[1]: Rebuild Hardware Database was skipped because of an unmet condition check (ConditionNeedsUpdate=/etc).
[ 10.115947] systemd[1]: Starting Load/Save OS Random Seed...
[ 10.116081] systemd[1]: Create System Users was skipped because no trigger condition checks were met.
[ 10.117530] systemd[1]: Starting Create Static Device Nodes in /dev...
[ 10.119317] systemd[1]: Mounted Kernel Trace File System.
[ 10.119494] systemd[1]: Mounted Kernel Configuration File System.
[ 10.306013] systemd[1]: Finished Coldplug All udev Devices.
[ 10.323164] systemd[1]: Started Journal Service.
[ 10.468794] systemd-journald[172]: Received client request to flush runtime journal.
[ 11.283951] systemd-journald[172]: /var/log/journal/526d2df7f831402999d7d78f92740820/system.journal: Monotonic clock jumped backwards relative to last journal entry, rotating.
[ 11.283979] systemd-journald[172]: Rotating system journal.
[ 51.945074] systemd-journald[172]: Time jumped backwards, rotating.
oleg@mobile:~:$
Уровни журнала фильтрации
Команда dmesg
связывает каждое буферное сообщение с уровнем журнала, характеризующим важность сообщения.
Доступные уровни:
- emerg
- Экстренные сообщения
- alert
- Предупреждения, требующие немедленных действий
- crit
- Критические условия
- err
- Сообщения об ошибках
- warn
- Предупреждающие сообщения
- notice
- Нормальные, но существенные условия
- info
- Информационные сообщения
- debug
- Сообщения уровня отладки
Для вывода сообщений, соответствующих определённому уровню, используется параметр -l
, за которым следует имя уровня:
oleg@mobile:~:$ sudo dmesg -l warn
[ 0.140294] ENERGY_PERF_BIAS: Set to 'normal', was 'performance'
[ 14.048298] ACPI Warning: SystemIO range 0x0000000000000428-0x000000000000042F conflicts with OpRegion 0x0000000000000400-0x000000000000047F (\PMIO) (20221020/utaddress-204)
[ 14.048314] ACPI Warning: SystemIO range 0x0000000000000540-0x000000000000054F conflicts with OpRegion 0x0000000000000500-0x0000000000000563 (\GPIO) (20221020/utaddress-204)
[ 14.048320] ACPI Warning: SystemIO range 0x0000000000000530-0x000000000000053F conflicts with OpRegion 0x0000000000000500-0x0000000000000563 (\GPIO) (20221020/utaddress-204)
[ 14.048326] ACPI Warning: SystemIO range 0x0000000000000500-0x000000000000052F conflicts with OpRegion 0x0000000000000500-0x0000000000000563 (\GPIO) (20221020/utaddress-204)
[ 14.048330] lpc_ich: Resource conflict(s) found affecting gpio_ich
[ 16.681979] platform regulatory.0: Direct firmware load for regulatory.db failed with error -2
[ 16.722923] iwlwifi 0000:01:00.0: can't disable ASPM; OS doesn't have ASPM control
[ 16.930594] r8169 0000:02:00.0: can't disable ASPM; OS doesn't have ASPM control
[ 17.328720] at24 7-0052: supply vcc not found, using dummy regulator
[15138.290795] psmouse serio1: Touchpad at isa0060/serio1/input0 lost sync at byte 6
[20451.248953] psmouse serio1: Touchpad at isa0060/serio1/input0 lost sync at byte 6
[20459.950294] psmouse serio1: Touchpad at isa0060/serio1/input0 lost sync at byte 6
oleg@mobile:~:$
В приведённом выше примере из журнала извлекаются только предупреждающие сообщения.
Для получения сообщений с нескольких уровней к команде dmesg
добавляется список уровней, разделённых запятыми:
oleg@mobile:~:$ sudo dmesg -l emerg,alert,crit,err
oleg@mobile:~:$
Выходные данные объединяют сообщения из указанных уровней журнала.
Заключение
В статье показано использование команды Linux dmesg
для просмотра и управления кольцевым буфером ядра. Утилита удобна при устранении неполадок ядра или оборудования.