• linux command ------ dmesg


    驱动开发中使用函数 printk() 打印的信息可以通过 dmesg 查看

    简介

    ‘dmesg’命令显示linux内核的环形缓冲区信息,我们可以从中获得诸如系统架构、cpu、挂载的硬件,RAM等多个运行级别的大量的系统信息。当计算机启动时,系统内核(操作系统的核心部分)将会被加载到内存中。在加载的过程中会显示很多的信息,在这些信息中我们可以看到内核检测到的硬件设备。

    dmesg 命令的使用范例

    ‘dmesg’命令设备故障的诊断是非常重要的。在‘dmesg’命令的帮助下进行硬件的连接或断开连接操作时,我们可以看到硬件的检测或者断开连接的信息。‘dmesg’命令在多数基于Linux和Unix的操作系统中都可以使用。

    我们可以使用如‘more’。 ‘tail’, ‘less ’或者‘grep’文字处理工具来处理‘dmesg’命令的输出。由于dmesg日志的输出不适合在一页中完全显示,因此我们使用管道(pipe)将其输出送到more或者less命令单页显示。

    [root@tecmint.com ~]# dmesg | more
    [root@tecmint.com ~]# dmesg | less

     在‘dmesg’命令后跟随‘head’命令来显示开始几行,‘dmesg | head -20′命令将显示开始的前20行。

    [root@tecmint.com ~]# dmesg | head  -20

     在‘dmesg’命令后跟随‘tail’命令(‘ dmesg | tail -20’)来输出‘dmesg’命令的最后20行日志,当你插入可移动设备时它是非常有用的。

    [root@tecmint.com ~]# dmesg | tail -20

    由于‘dmesg’命令的输出实在太长了,在其中搜索某个特定的字符串是非常困难的。因此,有必要过滤打印出一些包含‘usb’ ‘dma’ ‘tty’ ‘memory’等字符串的日志行。grep 命令 的‘-i’选项表示忽略大小写。

    [root@tecmint.com log]# dmesg | grep -i usb
    [root@tecmint.com log]# dmesg | grep -i dma
    [root@tecmint.com log]# dmesg | grep -i tty
    [root@tecmint.com log]# dmesg | grep -i memory

    我们可以使用如下命令来清空dmesg的日志。该命令会清空dmesg环形缓冲区中的日志。但是你依然可以查看存储在‘/var/log/dmesg’文件中的日志。你连接任何的设备都会产生dmesg日志输出。

    [root@tecmint.com log]# dmesg -c

    在某些发行版中可以使用命令‘tail -f /var/log/dmesg’来实时监控dmesg的日志输出。watch -n 2"dmesg | tail -20"表示2s周期性的执行引号的内容

    [root@tecmint.com log]# watch -n 2 "dmesg | tail -20"
  • 相关阅读:
    解决 DBMS_AW_EXP: BIN$*****==$0 not AW$
    物化视图(materialized view) 实现数据迁移、数据定时同步
    Mysql exists 与 in
    ORACLE DATAGUARD 进程
    ORACLE DATAGUARD SWITCHOVER 步骤
    Oracle Dataguard failover 操作步骤
    Python 包管理(PYPA)
    Emacs Org-mode 4 超连接
    Emacs Org-mode 3 表格
    ycmd for emacs 代码自动补全
  • 原文地址:https://www.cnblogs.com/god-of-death/p/8733267.html
Copyright © 2020-2023  润新知