dmesg(display message或者driver message)是Linux系统中用于显示内核启动信息和运行时状态的命令。它可以帮助我们诊断系统问题,例如硬件故障、驱动程序问题等。当你遇到系统问题时,可以查看dmesg的输出来获取更多关于问题的信息。
解读dmesg日志中的错误信息,通常需要关注以下几个方面:
时间戳:dmesg输出的信息通常包含时间戳,以方括号[]表示。这有助于确定错误发生的时间。
错误级别:dmesg输出的信息有不同的错误级别,例如[error]、[warn]等。错误级别可以帮助你了解问题的严重程度。
设备和驱动:错误信息通常会包含涉及的设备和驱动程序。例如,如果错误与硬盘相关,你可能会看到sd或sda这样的设备名称,以及相关的驱动程序名称。
错误描述:错误信息通常会包含对问题的描述,例如“failed”、“error”等关键词。这有助于了解问题的具体原因。
错误代码:有时,错误信息会包含一个错误代码。你可以查阅相关文档或在线资源,以获取更多关于错误代码的信息。
举个例子,以下是一个dmesg输出中的错误信息示例:
[领略 0.001] Initializing cgroup subsys cpuset
[领略 0.002] Initializing cgroup subsys cpu
[领略 0.003] Linux version 5.4.0-42-generic (buildd@lgw01-amd64-039) (gcc (Ubuntu 10.2.0-13ubuntu1) 10.2.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #46-Ubuntu SMP Fri Jul 10 00:24:02 UTC 2020
[领略 0.004] Command line: BOOT_IMAGE=/boot/vmlinuz-5.4.0-42-generic root=UUID=xxxx-xxxx-xxxx-xxxx-xxxx rootflags=ro quiet splash vt.handoff=7
[领略 0.005] KERNEL supported cpus:
[领略 0.006] Intel GenuineIntel
[领略 0.007] AMD AuthenticAMD
[领略 0.008] Centaur CentaurHauls
[领略 0.009] random: get_random_bytes called from start_kernel+0x9c/0x540 with crng_init=0
[领略 0.010] x86/fpu: Supporting XSAVE feature 0x001: 'x87 floating point registers'
[领略 0.011] x86/fpu: Supporting XSAVE feature 0x002: 'SSE registers'
[领略 0.012] x86/fpu: Supporting XSAVE feature 0x004: 'AVX registers'
[领略 0.013] x86/fpu: xstate_offset[2]: 576, xstate_sizes[2]: 256
[领略 0.014] x86/fpu: Enabled xstate features 0x7, context size is 832 bytes, using 'compacted' format.
[领略 0.015] BIOS-provided physical RAM map:
[领略 0.016] BIOS-e820: [mem 0x0000000000000000-0x000000000009ffff] usable
[领略 0.017] BIOS-e820: [mem 0x0000000000100000-0x00000000bffaffff] usable
[领略 0.018] BIOS-e820: [mem 0x00000000bfc00000-0x00000000bd3fffff] reserved
[领略 0.019] BIOS-e820: [mem 0x00000000bd400000-0x00000000bdbfffff] ACPI data
[领略 0.020] BIOS-e820: [mem 0.021] ACPI NVS
[领略 0.022] BIOS-e820: [mem 0x00000000be000000-0x00000000beffafff] reserved
[领略 0.023] BIOS-e820: [mem 0x00000000bfffb000-0x00000000bfffffff] reserved
[领略 0.024] BIOS-e820: [mem 0x0000000100000000-0x000000041fffffff] usable
[领略 0.025] NX (Execute Disable) protection: active
[领略 0.026] SMBIOS 2.8 present.
[领略 0.027] DMI: QEMU Virtual Machine, BIOS QEMU_EFI_20200225_01 1.0 20200225
[领略 0.028] tsc: Fast TSC calibration using PIT
[领略 0.029] tsc: Detected 3593.125 MHz processor
[领略 0.030] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.031] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.032] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.033] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.034] NX (Execute Disable) protection: active
[领略 0.035] SMBIOS 2.8 present.
[领略 0.036] DMI: QEMU Virtual Machine, BIOS QEMU_EFI_20200225_01 1.0 20200225
[领略 0.037] tsc: Fast TSC calibration using PIT
[领略 0.038] tsc: Detected 3593.125 MHz processor
[领略 0.039] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.040] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.041] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.042] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.043] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.044] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.045] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.046] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.047] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.048] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.049] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.050] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.051] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.052] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.053] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.054] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.055] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.056] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.057] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.058] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.059] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.060] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.061] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.062] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.063] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.064] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.065] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.066] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.067] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.068] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.069] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.070] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.071] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.072] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.073] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.074] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.075] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.076] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.077] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.078] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.079] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.080] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.081] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.082] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.083] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.084] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.085] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.086] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.087] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.088] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.089] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.090] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.091] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.092] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.093] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.094] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.095] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.096] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.097] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.098] e820: add [mem 0x0b100000-0x0b1fffffff] usable
[领略 0.099] e820: update [mem 0x00000000-0x00000fff] usable ==> reserved
[领略 0.100] e820: remove [mem 0x000a0000-0x000fffff] usable
[领略 0.101] e820: remove [mem 0x00100000-0x0b100fff] usable
[领略 0.102] e820: add [mem 0