Linux 内核日志诊断:dmesg 命令完整详解(硬件故障排查实战)

发布时间:2026/9/30 3:58:18

Linux 内核日志诊断:dmesg 命令完整详解(硬件故障排查实战) 1. 命令简介dmesg 命令是 Linux 系统中一个核心的诊断工具用于显示和控制内核环形缓冲区的内容。内核在启动和运行过程中会将硬件检测、设备驱动初始化、系统错误等重要信息实时写入此环形缓冲区。通过 dmesg系统管理员和开发者可以查看系统启动时的详细日志。 诊断硬件故障如硬盘错误、内存问题。 排查设备驱动加载失败的原因。 实时监控内核的运行状态。 这些信息对于系统调试和性能分析至关重要。开机时来不及查看的信息都可以通过此命令回顾。默认情况下这些日志也会被保存到 /var/log/dmesg 文件中。2. 语法格式bash运行dmesg [选项]...3. 常用选项及说明dmesg 提供了丰富的选项来过滤、格式化和控制输出。表格选项说明-H, --human人性化显示。输出更易读的时间戳并启用交互式分页器如 less进行浏览。-k, --kernel仅显示内核消息。这是默认行为。-l, --level 列表按日志级别过滤。只显示指定级别的消息。级别包括emerg, alert, crit, err, warn, notice, info, debug。-T, --ctime显示人类可读的日历时间戳例如 Mon May 27 14:12:34 2024而非默认的内核启动后的相对时间。-t, --notime不显示任何时间戳。-x, --decode解码设施和级别为可读的字符串。例如将 kern.info 显示为 kernel: info。-L, --color[always|auto|never]对消息级别进行颜色高亮。auto 为默认值仅在输出到终端时着色。-r, --raw打印原始的缓冲区消息包含原始的日志级别前缀如 6 代表 info 级别。-f, --facility 列表按设施产生消息的子系统过滤。例如kern, user, mail, daemon 等。-s, --buffer-size 大小设置用于查询环形缓冲区的大小字节。如果缓冲区被部分覆盖可使用此选项尝试读取更多历史消息。-c, --clear显示后清空环形缓冲区。此操作通常需要 root 权限请谨慎使用。-C, --clear直接清空环形缓冲区不显示内容。需要 root 权限。-h, --help显示帮助信息。-V, --version显示版本信息。日志级别说明内核消息有不同的严重级别数字越小越严重0 (emerg): 系统不可用 1 (alert): 必须立即采取行动 2 (crit): 严重情况 3 (err): 错误条件 4 (warn): 警告条件 5 (notice): 正常但重要的情况 6 (info): 信息性消息 7 (debug): 调试级消息4. 示例用法查看所有内核消息默认行为bash运行dmesg以人性化格式查看并启用分页bash运行dmesg -H或bash运行dmesg --human | less查看带有人类可读时间戳的消息bash运行dmesg -T仅查看错误 (err) 和警告 (warn) 级别的消息bash运行dmesg -l err,warn或使用级别编号bash运行dmesg -l 3,4结合 grep 搜索特定信息查看硬盘如 sda相关的信息bash运行dmesg | grep -i sda查看 USB 设备连接信息bash运行dmesg | grep -i usb查看内存信息bash运行dmesg | grep -i memory使用正则表达式搜索多个关键词如网卡 eth0 和 wlan0bash运行dmesg | grep -E eth0|wlan0查看最近发生的内核事件最后 20 行bash运行dmesg | tail -20查看特定设施如内核 kern的消息bash运行dmesg -f kern清空环形缓冲区需要 root 权限bash运行sudo dmesg -C5. 注意事项权限要求普通用户通常可以读取 dmesg 输出。但某些系统出于安全考虑可能通过 kernel.dmesg_restrict sysctl 参数值为 1限制普通用户访问。此时需要使用 sudo 或以 root 身份运行。清空缓冲区 (-c, -C) 操作始终需要 root 权限。缓冲区覆盖内核环形缓冲区大小有限当新消息产生时旧消息会被覆盖。因此重要的启动信息应及时查看或保存。时间戳默认时间戳是系统启动后的秒数和纳秒。使用 -T 选项可以转换为日历时间但请注意如果系统启动后时间被调整过这个转换可能不准确。与 /var/log/messages 或 journalctl 的区别dmesg 直接读取内核内存中的环形缓冲区内容更偏向硬件和驱动层。/var/log/messages 或 syslog 记录的是由用户空间守护进程如 rsyslog转发的、更广泛的系统日志。journalctl -k 命令在 systemd 系统上的功能与 dmesg 类似但能提供更结构化的查询。生产环境慎用清空操作-c 和 -C 选项会永久清除环形缓冲区中的历史信息可能导致问题排查困难在生产环境中应格外谨慎使用。Linux 学习资料 https://pan.baidu.com/s/1A6qqBk2ViE_Le2cQjSowkQ?pwd7uz8
延伸阅读

更多相关文章

2026/9/29 6:51:00

网站建设挣钱么:揭秘个人与工作室如何在红海中杀出一条血路并实现月入过万的真实路径

在这个数字化狂飙突进的时代,很多人都在问同一个问题:网站建设挣钱么?听起来似乎是个老生常谈的话题,毕竟互联网普及这么多年,建站的需求早已不像十年前那样稀缺。当你刷着短视频,看着那些光鲜亮丽的“自由职业者”晒出收款截图时,心里难免会有一丝波动,既想尝试又怕踩…

2026/9/30 3:56:37

小程序商城的商品图,为什么直接影响复购率

小程序商城的商品图,为什么直接影响复购率做 B2B 订货的业务员普遍觉得图片不重要:客户都是老客户,知道货长什么样。但实际使用数据里,商品图的缺失带来的影响比想象得大很多,而且不体现在第一次下单上,体现…

2026/9/30 3:56:37

鸿蒙下React Native重渲染优化:useCallback与memo实战

React Native鸿蒙跨平台,放在两年前还是不太敢碰的方向,今年已经成了不少团队绕不开的课题。我做鸿蒙端React Native适配和性能优化小半年,最让我头疼的倒不是API差异,而是那些看似不起眼的"多余渲染"——页面卡顿、列表…

2026/9/30 3:56:37

华为OD机试高频题:用map+list实现支持优先级队列的容器实战

最近在带一波准备华为OD机试的朋友,发现C卷100分的题目里,“支持优先级队列 - map与list”出场率相当高。很多第一次刷到这道题的人,第一反应都是“不就是堆吗”,结果一上手就发现不对劲:题目里压根没让你直接用优先队…

2026/9/30 3:56:37

Qt QFont全解析:从字体匹配到DPI适配的实战指南

字体这事儿,说大不大,说小不小。做Qt界面开发的,十有八九都在QFont上吃过亏——要么中文显示成方块,要么高分屏下控件挤成一团,要么DPI一变化整个界面直接没法看。问题看起来五花八门,其实根子往往都落在同…

2026/9/30 3:56:37

从网格搜索到贝叶斯优化:超参数调优原理与实战

1. 为什么网格搜索和随机搜索迟早会撞墙1.1 一次让我怀疑人生的调参经历先说个真实的场景。几年前我在做一个工业设备故障预测的项目,数据量不算大,几万条样本、四十多个特征,模型选了 XGBoost。当时我的调参方式是教科书式的网格搜索&#x…

2026/9/30 3:51:37

Model-Optimizer:大模型推理全链路分层优化实践指南

1. 项目概述:Model-Optimizer不是工具名,而是一类工程实践的统称 “Model-Optimizer”这个词在当前技术社区里常被误认为是一个具体软件或开源项目——比如有人搜“Model-Optimizer下载”“Model-Optimizer GitHub”,结果却找不到官方仓库。…

2026/9/29 11:07:23

东莞市品牌网站建设报价常见报错与解决

东莞品牌网站建设报价单背后:一份保姆级建站教程避坑实录 网站做好了没人访问,这大概是很多老板最头疼的事。花了大几万做的品牌站,上线后流量惨淡,比路边摊还冷清。别急着骂外包公司,很多“东莞品牌网站建设报价”里藏着不少猫腻,比如用模板站冒充定制…

2026/9/29 21:48:03

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解

如何划分训练/验证集:Spirula Studio五种eval_mode策略详解 【免费下载链接】spirula-studio Cross-vendor 3D Gaussian Splatting trainer - video to splat to mesh, Vulkan or CUDA. 项目地址: https://gitcode.com/GitHub_Trending/sp/spirula-studio Sp…

2026/9/29 7:00:49

SEO怎么推广速查手册新手避坑实战指南

SEO怎么推广速查手册新手避坑实战指南 模板网站太丑不够用?别急着加滤镜,那是治标不治本。很多老板盯着后台流量掉得眼红,却还在纠结首页Banner的圆角是不是3像素。这就像穿着西装去挖土,姿势不对,努力白费。我整理这份 速查手册…

2026/9/30 0:01:22

MATLAB+Yalmip+CPLEX实战:综合能源系统优化调度全流程解析

做综合能源系统优化调度这活儿,最痛苦的不是建模本身,而是模型写完之后不知道该怎么求解。看论文里轻飘飘一句“采用Yalmip调用CPLEX求解”,自己上手时却往往卡在环境配置、变量声明、约束写法和求解状态判读上,一耗就是两三天。这…

2026/9/30 0:01:22

I3C比I2C快10倍?RK3576实战:速率、DTS配置与混合总线避坑指南

I3C 比 I2C 快 10 倍?这句话在嵌入式群里传了很久,每次都能吵出一堆截图。前段时间我正好在 RK3576 上调板级 I3C 接口,从控制器寄存器一路摸到 Linux DTS 配置,踩了不少坑,也把这笔速度账彻底算明白了。本文就用 RK35…

2026/9/30 0:01:22

字符串转对象:JSON.parse、new Function与URLSearchParams

“字符串转对象”这几个字,我在技术群里见过的问法至少有十几种:有人拿着一串{a:1,b:2}说 JSON.parse 直接报错,有人要从 URL 里抠出参数,还有人只是想把abc变成能挂属性的东西。js 这门语言里,字符串和对象之间的转换…

2026/9/29 3:53:39

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/29 9:46:12

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/29 6:36:14

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑