内核日志查看:dmesg命令

devtools/2025/2/10 22:42:23/

dmesg 是 Linux 系统中用于 查看或控制内核环形缓冲区 的命令行工具。它主要用于显示系统启动时的硬件检测信息、内核日志以及运行时的硬件/驱动相关事件(如 USB 设备插拔、磁盘挂载等)。以下是 dmesg 的详细说明:


基本功能

  • 查看内核日志:直接运行 dmesg 会输出内核环形缓冲区中的全部日志。
  • 实时监控硬件事件:例如插入 U 盘、硬盘故障等事件会实时记录到内核日志中。

常用命令格式

dmesg [选项]

常用选项

选项作用
-d--display显示可读的时间戳格式(如 [Mon Jan 1 12:00:00 2023]
-H--human以更友好的格式显示日志(自动分页,需配合 less
-T--ctime将时间戳转换为本地时间(需内核支持)
-k仅显示内核消息(默认行为)
-l <级别>按日志级别过滤(如 -l err 显示错误信息)
-w--follow实时监控新日志(类似 tail -f
-C--clear清空内核环形缓冲区
-s <大小>设置缓冲区大小(默认 16392 字节)

示例

  1. 查看所有内核日志

    dmesg
    
  2. 显示可读时间戳并分页查看

    dmesg -H | less
    
  3. 过滤错误和警告信息

    dmesg -l err,warn
    
  4. 实时监控新日志

    dmesg -w
    
  5. 查找特定硬件信息(如 USB)

    dmesg | grep -i usb
    
  6. 清空内核缓冲区(需 root 权限):

    sudo dmesg -C
    

日志级别

内核日志按优先级分类,可通过 -l 过滤:

  • emerg:系统不可用
  • alert:需要立即处理
  • crit:严重错误
  • err:一般错误
  • warn:警告
  • notice:普通但重要的事件
  • info:提示信息
  • debug:调试信息

应用场景

  1. 硬件故障排查:如硬盘错误、USB 设备无法识别。
  2. 驱动问题分析:驱动加载失败或兼容性问题。
  3. 系统启动问题:查看启动阶段的内核初始化日志。
  4. 性能监控:分析内核层面的性能事件(如中断、内存分配)。

注意事项

  • 普通用户可能需要 sudo 权限才能执行某些操作(如清空缓冲区)。
  • 内核环形缓冲区大小有限,旧日志会被新事件覆盖。
  • 系统日志文件(如 /var/log/kern.log)会持久化存储 dmesg 内容,适合长期排查。

替代工具

  • journalctl(Systemd 系统):
    journalctl -k  # 等同于 dmesg
    journalctl --dmesg --follow  # 实时监控
    

掌握 dmesg 能帮助你快速定位系统底层问题,尤其在无 GUI 环境的服务器场景中非常实用!


http://www.ppmy.cn/devtools/157338.html

相关文章

基于ansible自动化部署ftp服务

Ansible部署FTP服务 基础环境配置就不过多赘述了 配置主机名、主机解析、免密访问、ansible下载、配置ansible主机、防火墙、selinux、配置centos2009镜像为仓库源、配置ftp远程仓库&#xff1a;可参考博文 节点信息如下&#xff1a; 主机名IPansible192.168.200.75node192…

RabbitMQ 从入门到精通:从工作模式到集群部署实战(二)

接上篇&#xff1a;《RabbitMQ 从入门到精通&#xff1a;从工作模式到集群部署实战&#xff08;一&#xff09;》 链接 文章目录 4.安装RabbitMQ Messaging Topology Operator 裸金属环境部署RabbitMQ部署单实例部署集群 4.安装RabbitMQ Messaging Topology Operator 使用 cer…

string 与 wstring 的字符编码

测试代码: #include<stdio.h> #include<stdlib.h> #include<windows.h> #include <locale.h> #include <string> #include <iostream>// 函数用于计算UTF-8字符串中的字符数 int utf8_strlen(const char* str) {int len = 0;for (; *s…

Gitee AI上线:开启免费DeepSeek模型新时代

一、引言 在当今数字化浪潮汹涌澎湃的时代&#xff0c;人工智能&#xff08;AI&#xff09;已成为推动各行业变革与发展的核心驱动力。从智能语音助手到图像识别技术&#xff0c;从自动驾驶汽车到金融风险预测&#xff0c;AI的应用无处不在&#xff0c;深刻地改变着我们的生活和…

Windows下AMD显卡在本地运行大语言模型(deepseek-r1)

Windows下AMD显卡在本地运行大语言模型 本人电脑配置第一步先在官网确认自己的 AMD 显卡是否支持 ROCm下载Ollama安装程序模型下载位置更改下载 ROCmLibs先确认自己显卡的gfx型号下载解压 替换替换rocblas.dll替换library文件夹下的所有 重启Ollama下载模型运行效果 本人电脑配…

Elasticsearch term精确查询无数据

Elasticsearch数据库中存在数据&#xff0c;但是使用term无法查到&#xff0c; 原因Elasticsearch 对文本字段的处理有两种主要类型&#xff1a;text 和 keyword, 当你对 text 类型的字段使用 match 查询时&#xff0c;Elasticsearch 会自动对查询字符串进行分词&#xff0c;并…

Python进行模型优化与调参

在数据科学与机器学习领域,模型的优化与调参是提高模型性能的重要步骤之一。模型优化可以帮助提高模型的准确性和泛化能力,而合理的调参则能够充分发挥模型的潜力。这篇教程将重点介绍几种常用的模型优化与调参方法,特别是超参数调整和正则化技术的应用。这些技术能够有效地…

【负载均衡式在线OJ】实现负载均衡

目录 管理服务器 增加负载 && 减少负载 重置负载 && 获得负载 负载均衡 添加配置信息 什么是负载均衡 如何实现&#xff1f; 管理服务器 增加负载 && 减少负载 客户端访问一次服务器&#xff0c;负载就加1。客户端结束访问服务器&#xff0c;…