dmesg命令¶
一个非常重要的命令,用于显示内核环缓冲区(kernel ring buffer)中的消息日志。
它主要包含系统启动时和运行过程中内核产生的各种信息,比如设备驱动加载、硬件检测、错误警告等。
基本信息¶
功能:查看内核日志,尤其是启动和硬件相关的信息
应用场景:
查看系统启动过程的详细日志
诊断硬件问题(如设备识别、驱动加载)
追踪内核错误和警告
监控设备状态变化
🔧 基本用法¶
dmesg
执行后,会打印出内核的所有日志信息,通常非常多,内容从系统开机开始一直到当前时刻。
📋 常用选项¶
命令 |
功能说明 |
---|---|
|
显示全部内核信息 |
|
以可读性增强(高亮 + 分页)方式查看 |
|
显示可读时间戳(而非内核启动时间) |
`dmesg |
grep usb` |
`dmesg |
grep error` |
|
只查看错误级别的内核信息 |
|
只查看警告及以上信息 |
|
实时查看新产生的内核日志(watch 模式) |
✅ 使用建议¶
查看启动过程:当系统启动异常时,
dmesg
可以帮助找到加载硬件或模块失败的原因。硬件检测:新插入设备后,查看
dmesg
输出判断是否识别及驱动是否正常加载。调试驱动:开发或测试驱动时,驱动产生的内核日志会被
dmesg
捕获。配合过滤:使用
grep
过滤关键字提高定位效率。
⚠️ 注意事项¶
需要足够权限查看全部日志,通常使用
sudo dmesg
日志会随着内核缓冲区大小限制被覆盖,最新信息在后面
不是所有日志都直接反映问题,需要结合上下文判断
📦 示例输出¶
$ dmesg
[ 0.000000] Linux version 6.8.0-21-generic (buildd@ubuntu) ...
[ 0.045678] pci 0000:00:1f.2: SATA controller detected
[ 1.234567] usb 1-1: new high-speed USB device number 2 using xhci_hcd
[ 3.567890] snd_hda_intel 0000:00:1f.3: detected codec ...
... ...