首页 > 系统相关 >linux dmesg

linux dmesg

时间:2023-06-25 09:58:22浏览次数:54  
标签:info dmesg linux messages 使用 Linux 日志

简介


dmesg is used to examine or control the kernel ring buffer. The default action is to display all messages from the kernel ring buffer.

Linux内核启动时会加载硬件驱动,在有新硬件时也会加载驱动,如果想要查看内核的活动,可以使用dmesg命令。

Linux内核日志存储在一个ring-buffer中,它的大小是固定的,当队列满时,新的消息会覆盖掉最旧的消息。

实际上,在boot阶段,所有的应用还没有启动,syslogd也未启动,这时内核日志是非常重要的信息。

除了设备初始化日志、内核模块日志,它还会包含一些应用崩溃的相关信息记录,了解dmesg的使用对于调试程序相当重要。

 dmesg -HT -x -w -l info,err

指令


  1. dmesg
  • 直接输入dmesg即可输出所有的mesg信息到终端,有的发行版本可能需要root权限
  • 设置不需要root也可以查看:sudo sysctl -w kernel.dmesg_restrict=0
  1. 常用设置
dmesg -L # color
dmesg -H # human timestamp
dmesg -T # readable timestamp
dmesg -w # --follow # 持续观察输出
dmesg -x # --解码解码功能和级别为可读字符串 dmesg | tail -10 # 最后10行,当然也可以使用其它管线命令,如more,less,grep
  1. 日志级别

使用了以下级别:

    emerg: System is unusable.
    alert: Action must be taken immediately.
    crit: Critical conditions.
    err: Error conditions.
    warn: Warning conditions.
    notice: Normal but significant condition.
    info: Informational.
    debug: Debug-level messages.

使用dmesg -l info仅输出info级别的日志,这不包括更高级别的日志。

'dmesg -l debug,notice’同时输出多种级别的日志。

  1. 用户组

dmesg根据用户类别对日志进行了分组:

    kern: Kernel messages.
    user: User-level messages.
    mail: Mail system.
    daemon: System daemons.
    auth: Security/authorization messages.
    syslog: Internal syslogd messages.
    lpr: Line printer subsystem.
    news: Network news subsystem.

使用`-f(facility)'参数过滤组。

使用 -x(decode) 参数可以输出包括组和日志级别的信息。

  1. 清除旧内容

对于服务器,本操作请谨慎使用,清除后不会再恢复。

对于嵌入式设备的调试,它会比较清楚地展现当前的log信息。

dmesg -c

显示并清除当前的日志内容。

下次再dmesg时就没有以前的日志了。

小结


对于驱动、硬件模块等调试人员来说,dmesg是一个经常使用的命令。

对于应用程序开发人员来说,它是一个需要掌握的调试程序的技能。

它的使用很简单,达到的效果却很惊人。


参考资料

How to Use the dmesg Command on Linux
Linux dmesg Command Tutorial for Beginners (5 Examples)

标签:info,dmesg,linux,messages,使用,Linux,日志
From: https://www.cnblogs.com/colin88/p/17502161.html

相关文章

  • linux查看cpu信息
    查看CPU信息(型号)1cat/proc/cpuinfo|grepname|cut-f2-d:|uniq-c #查看物理CPU个数1cat/proc/cpuinfo|grep"physicalid"|sort|uniq|wc-l #查看每个物理CPU中core的个数(即核数)1cat/proc/cpuinfo|grep"cpucores"|uniq #查看逻辑CP......
  • 在Linux下搭建Git服务器
    众所周知,版本系统在开发环境中是必不可少的,但是我们可以把代码免费的托管到GitHub上,如果我们不原意公开项目的源代码,公司又不想付费使用,那么我们可以自己搭建一台Git服务器,可以用Gitosis来管理公钥,还是比较方便的。搭建环境:服务器 CentOS6.6+git(version1.8.3.1)客户......
  • 嵌入式linux的几点小经验总结
    自己的功能一定要做下班后的自动化测试,不能指望测试部给测出问题(自动化测试可以用python来控制,比如python通过继电器控制产品的上下电或者触控等操作,比如打开关闭摄像头,然后通过adb读取测试完毕后的状态,比如摄像头是否有图像输出)电信类产品往往要求很高,所以常常有主......
  • 自建frp服务器,搭建内网穿透,linux安装及docker安装
    frp服务搭建frp是一个专注于内网穿透的高性能的反向代理应用,支持TCP、UDP、HTTP、HTTPS等多种协议。可以将内网服务以安全、便捷的方式通过具有公网IP节点的中转暴露到公网。通过在具有公网IP的节点上部署frp服务端,可以轻松地将内网服务穿透到公网,同时提供诸多专业的功能......
  • Linux-FTP服务器搭建
    搭建FTP服务器,让客户端实现上传下载文件了解内容:对于配置文件中,常用的全局配置选项除了在配置文件中设置写权限之外,还要对这个目录设置一个selinux的权限,是否开启匿名用户的写权限on代表开启,匿名用户才会有响应的写权限下面构建一个匿名上传的FTP服务器:条件:准备两台虚拟机,一台作为......
  • 强强联手:诚迈科技携手研华共同发起嵌入式Linux和Android联盟
    3月16日于2017年纽伦堡嵌入式电子与工业电脑应用展(EmbeddedWorld)上,全球智能系统领导厂商研华公司宣布与诚迈科技等9家公司作为联合发起人,共同宣布成立嵌入式Linux与Android联盟(ELAA)。ELAA主要在工业嵌入式市场推动开放、标准化的Linux和Android软硬件构架,诚迈科技及其......
  • 强强联手:诚迈科技携手研华共同发起嵌入式Linux和Android联盟
    3月16日于2017年纽伦堡嵌入式电子与工业电脑应用展(EmbeddedWorld)上,全球智能系统领导厂商研华公司宣布与诚迈科技等9家公司作为联合发起人,共同宣布成立嵌入式Linux与Android联盟(ELAA)。ELAA主要在工业嵌入式市场推动开放、标准化的Linux和Android软硬件构架,诚迈科技及其......
  • 强强联手:诚迈科技携手研华共同发起嵌入式Linux和Android联盟
    3月16日于2017年纽伦堡嵌入式电子与工业电脑应用展(EmbeddedWorld)上,全球智能系统领导厂商研华公司宣布与诚迈科技等9家公司作为联合发起人,共同宣布成立嵌入式Linux与Android联盟(ELAA)。ELAA主要在工业嵌入式市场推动开放、标准化的Linux和Android软硬件构架,诚迈科技及其......
  • linux memblock 介绍
    memblock作用内核初始化阶段是用引导内存分配器memblock进行管理,因为内核里面有很多内存结构体,不可能在静态编译阶段就静态初始化所有的这些内存结构体。另外,在系统启动过程中,系统启动后的物理内存分配器本身也需要初始化,如伙伴分配器,那么伙伴分配器如何获取内存来初始化自己......
  • linux 系统清理 systemctl 日志
    背景生产环境日志文件太多导致磁盘空间不足,临时删除一些systemctl日志解决步骤首先,停止systemd-journald服务:sudosystemctlstopsystemd-journald清理日志文件:sudojournalctl--vacuum-size=100M上述命令将清理超过100MB大小的日志文件。你可以根据需要调整--vacuum-size参数......