在使用 Ubuntu 或其他 Linux 系统时,你可能会遇到系统崩溃、硬件异常或驱动问题。这时,查看内核日志就显得尤为重要。而
dmesg命令正是我们查看这些信息的利器!本文将手把手教你如何使用 Ubuntu dmesg命令 来查看和分析内核消息,即使是 Linux 小白也能轻松上手。

什么是 dmesg?
dmesg(display message 或 driver message)是 Linux 系统中用于打印或控制内核环形缓冲区(kernel ring buffer)的命令。每当系统启动、硬件插入/拔出、驱动加载或发生内核事件时,相关信息都会被记录到这个缓冲区中。
通过
dmesg,你可以看到: 系统启动过程中的硬件检测信息 USB设备插入/拔出的日志 磁盘错误或文件系统警告 网络接口状态变化 内核 Oops 或 panic 错误(严重问题)
基本用法:查看所有内核消息
最简单的用法就是在终端中直接输入:
这会输出大量信息,可能滚动得很快。建议配合 dmesgless
或 more
分页查看:
由于 dmesg | less实用技巧:过滤关键信息
dmesg
输出内容太多,我们可以使用 grep
过滤关键词。例如:
1. 查看 USB 设备相关日志
默认的 注意:如果系统刚启动不久, 如果你需要测试某个操作前后的内核变化,可以清空缓冲区(需 root 权限): ⚠️ 注意:此操作不可逆,请确保你真的需要清空日志。 除了 因此,当你排查问题时,也可以结合这些文件一起分析。 掌握 Ubuntu dmesg命令 是 Linux 系统维护和故障排查的基础技能。通过它,你可以快速定位硬件、驱动或内核层面的问题。无论是日常运维还是学习 Linux系统日志 机制, 记住几个关键词:Ubuntu dmesg命令、内核日志查看、Linux系统日志、dmesg使用教程——它们将帮助你在搜索引擎中快速找到相关资料。 现在,打开你的 Ubuntu 终端,试试 dmesg | grep -i usb2. 查看磁盘或 SATA 错误
dmesg | grep -i error3. 查看最近 10 行内核消息
dmesg | tail -n 10时间戳显示:让日志更清晰
dmesg
输出不带人类可读的时间。加上 -T
参数可以显示真实时间(需系统日志服务正常运行):dmesg -T-T
可能无法正确解析时间,此时可结合 /var/log/kern.log
查看完整时间戳日志。清空 dmesg 缓冲区(谨慎操作)
sudo dmesg -C与其他日志系统的关系
dmesg
,Ubuntu 还使用 systemd-journald
和 rsyslog
记录日志。内核消息也会被同步到以下文件:/var/log/kern.log
:专门存储内核日志 /var/log/syslog
:包含系统整体日志(含内核)总结
dmesg
都是你不可或缺的工具。dmesg | head
,看看你的系统今天都经历了什么吧!
