参考:Linux kernel buffer ring

Linux dmesg Command Tutorial for Beginners (5 Examples)

7 ‘dmesg’ Commands for Troubleshooting and Collecting Information of Linux Systems

前言

Linux启动是个复杂的流程,BIOS->MBR->boot loader。。。

boot loader阶段有Kernel以及initrd,Kernel通过initrd加载到bootable device的驱动后正式接管根目录文件系统,然后加载各种驱动,准备OS下程序运行环境等等。boot loader详细工作如下图。

Kernel做了这么多事情,有什么办法观察内核所作的工作吗?  dmesg可以。

使用

无参数

无参数使用dmesg时,会把内核buffer ring中的所有日志全部显示出来,直接看比较麻烦。我在自己的环境上测试,有1700多条日志

[root@localhost etc]# dmesg | wc -l

通过日志等级缩小dmesg输出

这个是参考国外博客的,但是现在dmesg不允许这么用了

日志等级从低到高

info - 一些基本的信息说明

notice - 比 info 稍稍重要些

warn - 警示的信息,可能有问题,但是还不至于影响到某个 daemon 运行。基本上, info, notice, warn 这三个等级都是在通知一些基本信息,还不至于对系统运行造成影响

err - 一些重大的错误信息,例如配置档的某些配置值造成该服务服法启动, 通常通过 err 的错误告知

crit - 错误临界点

alert - 警告,问题很严重,必须立即采取行动

emerg - 系统已经几乎要死机的状态,大概只有硬件出问题,导致整个核心无法顺利运行,才会出现这样的情况

-c Clear the ring buffer contents after printing.

-r Print the raw message buffer, i.e., don’t strip the log level prefixes.

-s bufsize

Use a buffer of size bufsize to query the kernel ring buffer. This is 16392 by default. (The default kernel syslog buffer size was 4096 at first,
8192 since 1.3.54, 16384 since 2.1.113.) If you have set the kernel buffer to be larger than the default then this option can be used to view the
entire buffer.

-n level

Set the level at which logging of messages is done to the console. For example, -n 1 prevents all messages, except panic messages, from appearing on
the console. All levels of messages are still written to /proc/kmsg, so syslogd(8) can still be used to control exactly where kernel messages appear.
When the -n option is used, dmesg will not print or clear the kernel ring buffer.

When both options are used, only the last option on the command line will have an effect.

Linux命令——dmesg的更多相关文章

  1. linux命令dmesg查看进程被杀死原因

    有一次一个python进程挂了,使用了下这个命令. 可以看到原因:虚拟机总共内存8082608KB,结果python项目就消耗掉了7341764KB,内存泄露,导致python进程被系统杀死 顺带介绍 ...

  2. Linux命令 dmesg:分析内核产生的信息

    案例一 输出所有的内核开机时的信息 zh@zh:~$dmesg | more 案例二 查找开机的时候硬盘的相关信息

  3. 【linux】dmesg命令显示开机信息和设备加载情况

    Linux命令dmesg用来显示开机信息,kernel会将开机信息存储在ring buffer中.您若是开机时来不及查看信息,可利用dmesg来查看.开机信息亦保存在/var/log目录中,名称为dm ...

  4. (转)Linux 系统设置 : dmesg 命令详解

    原文:https://blog.csdn.net/yexiangCSDN/article/details/80683246 https://www.cnblogs.com/duanxz/p/34770 ...

  5. Linux下dmesg命令处理故障和收集系统信息的7种用法

    目录: <syslog之一:Linux syslog日志系统详解> <syslog之二:syslog协议及rsyslog服务全解析> <syslog之三:建立Window ...

  6. Linux命令整理中...

    Linux命令整理中... 最常用命令(我最近最常用的一般放在前面tipsbychsry) clear 清屏 date 显示日期 cal 显示日历 cal 2014 显示2014年的日历 shutdo ...

  7. LINUX命令总结 -------来自 水滴娃娃 的CSDN

    LINUX命令总结 标签: LINUX命令总结 2014-01-27 15:54 41039人阅读 评论(1) 收藏 举报  分类: linux(1)  版权声明:本文为博主原创文章,未经博主允许不得 ...

  8. [Android ] linux命令英文缩写的含义(方便记忆)

    du -sh */ reference to : http://blog.chinaunix.net/uid-27164517-id-3299073.html linux常用命令的英文单词缩写 命令缩 ...

  9. 开发过程中常用的Linux命令

    做Java开发好几年了,部署JavaWeb到服务器上,一般都选择Linux,Linux作为服务器真是不二之选,高性能,只要熟悉Linux,操作快捷,效率很高. 总结一下工作中常用的Linux命令备忘: ...

随机推荐

  1. dataTable.NET的column index的不同定義

    dataTable.NET是一個jQuery的plug in 第三方的library, 用來實現web page中table的interaction controls, 另外最近有在用的還有Teler ...

  2. [LeetCode] 624. Maximum Distance in Arrays 数组中的最大距离

    Given m arrays, and each array is sorted in ascending order. Now you can pick up two integers from t ...

  3. 【Python学习之一】Python安装、IDE安装配置

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 python2.X python3.X 所谓安装Python,安装的是 ...

  4. DotNetty是微软的Azure团队,使用C#实现的Netty的版本发布

    DotNetty是微软的Azure团队,使用C#实现的Netty的版本发布 Netty(DotNetty)原理解析 一.背景介绍 DotNetty是微软的Azure团队,使用C#实现的Netty的版本 ...

  5. POJ1166 The Clocks (爆搜 || 高斯消元)

    总时间限制: 1000ms,内存限制: 65536kB 描述 |-------| |-------| |-------| | | | | | | | |---O | |---O | | O | | | ...

  6. MySQL8.0.16 单机 Linux安装以及使用

    安装 先去下载 https://dev.mysql.com/downloads/mysql/ 然后上传到Linux 进入存放目录,解压到指定目录[我这里是/soft/mysql8] [root@loc ...

  7. Redhat7.6Linux版本下,在Oracle VM VirtualBox下hostonly下IP地址配置

    安装配置Linux的Redhat7.6教程见:https://www.cnblogs.com/xuzhaoyang/p/11264563.html 然后,配置完之后,我们开始配置IP地址,配置IP地址 ...

  8. Apache Kafka用例

    1.目标 在我们上一篇Kafka教程中,我们讨论了Kafka Pros and Cons.今天,在这篇Kafka文章中,我们将讨论Apache Kafka用例和Kafka应用程序.Kafka是新数据堆 ...

  9. 开发板与pc之间文件传输:kermit and lrzsz

    imx6开发板与pc机之间通过串口传输文件步骤: 1. 安装好kermit并可以使用 2. 交叉编译lrzsz开源软件并把可执行程序lrz lsz拷贝到开发板 2.1 下载并解压lrzsz-0.12. ...

  10. hashlib 加密 与进度条

    # 加密 ''' md5 = hashlib.md5() md5.update('how to use md5 in python hashlib?') #字节才可以 print md5.hexdig ...