Příkaz dmesg je skvělý příkaz pro řešení problémů s hardwarem. Když se systém nastartuje, jádro identifikuje různá hardwarová zařízení dostupná tomuto systému. Jakmile jádro identifikuje tato zařízení, informace se zapíší do kruhové vyrovnávací paměti jádra. Tato kruhová vyrovnávací paměť je v podstatě interním protokolem jádra. K vytištění této kruhové vyrovnávací paměti lze použít příkaz dmesg.
Následuje příklad výstupu příkazu dmesg:
# dmesg [ 0.000000] Initializing cgroup subsys cpuset [ 0.000000] Initializing cgroup subsys cpu [ 0.000000] Initializing cgroup subsys cpuacct [ 0.000000] Linux version 3.10.0-229.1.2.el7.x86_64 ([email protected]) (gcc version 4.8.2 20140120 (Red Hat 4.8.2-16) (GCC) ) #1 SMP Fri Mar 27 03:04:26 UTC 2015 [ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-229.1.2.el7.x86_64 root=/dev/mapper/md0-root ro rd.lvm.lv=md0/swap crashkernel=auto rd.md.uuid=bec13d99:42674929:76663813:f748e7cb rd.lvm.lv=md0/root rd.md.uuid=7adf0323:b0962394:387e6cd0:b2914469 rhgb quiet LANG=en_US.UTF-8 systemd.debug [ 0.000000] e820: BIOS-provided physical RAM map: [ 0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable [ 0.000000] BIOS-e820: [mem 0x000000000009fc00-0x000000000009
Můžete použít možnost -T pro zobrazení zpráv spolu s časovým razítkem.
# dmesg -T | less
Příklady příkazů dmesg
1. Chcete-li vytisknout nebo ovládat vyrovnávací paměť jádra:
# dmesg
2. Vymazání vyrovnávací paměti jádra po tisku:
# dmesg -c
3. Chcete-li vytisknout nevyrovnávací paměť zpráv:
# dmesg -r
4. Chcete-li zadat velikost vyrovnávací paměti vyzvánění:
# dmesg -s 1024
5. Chcete-li nastavit úroveň protokolování:
# dmesg -n level # dmesg -n 1 ## prevent all messages