dmesg是linux内核环形缓冲区日志查看工具,用于诊断硬件故障、驱动问题及内核崩溃,支持时间戳显示(-t)、错误警告过滤(-l err,warn)等,但缓冲区容量有限且重启后旧日志会被覆盖。

当电脑出现蓝屏、USB设备突然失联、显卡花屏或硬盘读写异常时,系统底层通常已生成硬件相关的故障日志,但这些记录不会主动弹窗提示,必须手动提取内核级和驱动层原始日志才能定位真实原因。
用 dmesg 提取内核环形缓冲区中的硬件错误
这一步直接读取开机至今的内核实时日志,对显卡驱动崩溃、内存校验失败、PCIe设备掉线等硬性报错最敏感,无需安装额外工具。
打开终端,执行:sudo dmesg -T
命令会输出带可读时间戳的全部内核消息,重点查找包含“error”、“fail”、“timeout”、“reset”、“offline”、“NMI watchdog”字样的行——这些是硬件交互失败的明确信号。
如果日志过长难以定位,加过滤更高效:sudo dmesg -l err,warn,仅显示错误与警告级别条目。
注意:dmesg 缓冲区有容量限制,重启后旧日志会被覆盖,因此发现硬件异常后应第一时间执行该命令。
在 Windows 事件查看器中筛选关键硬件类错误事件
Windows 将硬件故障统一归入“系统”日志,并通过特定事件ID标识严重问题,比如电源异常、磁盘坏道、CPU过热或驱动加载失败。
第一步:按 Win + R → 输入 eventvwr.msc → 回车启动事件查看器。
第二步:左侧导航树中依次展开 Windows 日志 → 系统。
第三步:右键“系统”日志 → 选择“筛选当前日志” → 在“包括事件ID”栏输入:41,6008,7031,153,13,1001(英文逗号分隔)。
这组ID对应非正常关机、意外断电、服务意外终止、磁盘警告、硬件错误及蓝屏前兆,是硬件故障最集中的信号源。
第四步:勾选“错误”和“警告”级别 → 点击“确定”,列表即刻收缩为高价值线索。
第五步:双击任一事件 → 查看“详细信息”选项卡 → 注意“BugCheckCode”“DriverName”“DeviceId”字段,它们直接指向故障模块或硬件实体。
检查 /var/log/ 下持久化硬件相关文本日志
Linux 系统将部分硬件检测结果写入固定日志文件,尤其适用于排查启动阶段的设备识别失败或固件兼容性问题。
执行:sudo cat /var/log/kern.log | grep -i "error\|fail\|firmware\|acpi"
/var/log/kern.log 是内核专用日志,比 dmesg 更持久,保留了上次重启前的完整硬件初始化过程。
若怀疑是 ACPI 电源管理导致休眠唤醒失败,单独查:sudo grep -i acpi /var/log/syslog。
对于服务器环境,还可检查:sudo cat /var/log/messages | grep -i "hardware\|raid\|smartd",获取 RAID 卡状态或 SMART 磁盘预警。
调用 journalctl 精准回溯某次硬件异常发生时刻
方法一:查看本次启动以来所有与硬件驱动相关的错误
sudo journalctl -b -u systemd-udevd -p err
udev 是设备事件管理器,该命令专抓设备热插拔、驱动加载失败等操作的报错。
方法二:锁定某块硬件(如 NVIDIA 显卡)的完整交互日志
sudo journalctl -b | grep -i "nvidia\|gpu\|drm"
方法三:导出过去两小时内所有含“thermal”“overheat”“throttle”的日志供离线分析
sudo journalctl --since "2 hours ago" | grep -i "thermal\|overheat\|throttle" > ~/thermal_errors.log
这一步能暴露 CPU/GPU 散热瓶颈引发的降频或自动关机行为,是笔记本高温死机的核心证据链。











