导航:首页 > 程序命令 > dmesg命令详解

dmesg命令详解

发布时间:2022-09-11 03:00:22

1. 各位大神dmesg命令最左边那一列数字代表什么意思

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

-c是该命令的一个可选参数,表示当完成打印显示后清除缓冲内的内容

2. 查看和打印日志的linux命令

Linux系统日志文件存放在/var/log下
/var/log/cron 记录了系统定时任务相关的日志;
/var/log/cups 记录打印信息的日志;
/var/log/dmesg 记录了系统在开机时内核自检的信息,也可以使用dmesg命令直接查看内核自检信息。
/var/log/btmp 记录错误登录的日志,这个文件是二进制文件,不能直接vi查看,而要使用lastb命令查看;
/var/log/lastlog 记录系统中所有用户最后一次的登录时间的日志。这个文件也是二进制文件,不能直接vi,而要使用lastlog命令查看。
/var/log/mailog 记录邮件信息;

/var/log/message 记录系统重要信息的日志,记录Linux系统的绝大多数重要信息,如果系统出现问题,首先要检查的就是应该是这个日志文件;
/var/log/secure 记录验证和授权方面的信息,只要涉及账户和密码的程序都会记录。比如说系统的登录,ssh的登录,su切换用户,sudo授权,甚至添加用户和修改用户密码;
/var/log/wtmp 永久记录所有用户的登录、注销信息,同时记录系统的启动、重启、关机事件。同样这个文件也是一个二进制文件不能直接vi而需要使用last命令来查看;
/var/run/utmp 记录当前已经登录的用户的信息。这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息,同样这个文件不能直接vi,要使用w,who,users等命令;

3. android dmesg 在哪

linux中的Printk与dmesg功能要将linux内核的带级别控制的printk内容打印出来,在命令行输入 dmesg -n 8 就将所有级别的信息都打印出来。linux命令:dmesg功能说明:显示开机信息。语法:dmesg [-cn][-s <缓冲区大小>]补充说明:kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息亦保存在/var/log目录中,名称为dmesg的文件里。 参数:-c 显示信息后,清除ring buffer中的内容。-s<缓冲区大小> 预设置为8196,刚好等于ring buffer的大小。-n 设置记录信息的层级。printk() 使用说明内核通过 printk() 输出的信息具有日志级别,日志级别是通过在 printk() 输出的字符串前加一个带尖括号的整数来控制的,如 printk(<6>Hello, world! );。内核中共提供了八种不同的日志级别,在 linux/kernel.h 中有相应的宏对应。#define KERN_EMERG <0> /* system is unusable */#define KERN_ALERT <1> /* action must be taken immediately */#define KERN_CRIT <2> /* critical conditions */#define KERN_ERR <3> /* error conditions */#define KERN_WARNING <4> /* warning conditions */#define KERN_NOTICE <5> /* normal but significant */#define KERN_INFO <6> /* informational */#define KERN_DEBUG <7> /* debug-level messages */#define KERN_EMERG <0> /* system is unusable */#define KERN_ALERT <1> /* action must be taken immediately */#define KERN_CRIT <2> /* critical conditions */#define KERN_ERR <3> /* error conditions */#define KERN_WARNING <4> /* warning conditions */#define KERN_NOTICE <5> /* normal but significant */#define KERN_INFO <6> /* informational */#define KERN_DEBUG <7> /* debug-level messages */所以 printk() 可以这样用:printk(KERN_INFO Hello, world! );。未指定日志级别的 printk() 采用的默认级别是 DEFAULT_MESSAGE_LOGLEVEL,这个宏在 kernel/printk.c 中被定义为整数 4,即对应KERN_WARNING。 在 /proc/sys/kernel/printk 会显示4个数值(可由 echo 修改),分别表示当前控制台日志级别、未明确指定日志级别的默认消息日志级别、最小(最高)允许设置的控制台日志级别、引导时默认的日志级别。当 printk() 中的消息日志级别小于当前控制台日志级别时,printk 的信息(要有符)就会在控制台上显示。但无论当前控制台日志级别是何值,通过 /proc/kmsg (或使用dmesg)总能查看。另外如果配置好并运行了 syslogd 或 klogd,没有在控制台上显示的 printk 的信息也会追加到 /var/log/messages.log 中。通过读写/proc/sys/kernel/printk文件可读取和修改控制台的日志级别。查看这个文件的方法如下:#cat /proc/sys/kernel/printk6 4 1 7上面显示的4个数据分别对应控制台日志级别、默认的消息日志级别、最低的控制台日志级别和默认的控制台日志级别。可用下面的命令设置当前日志级别:# echo 8 > /proc/sys/kernel/printk分析与总结: Printf在终端显示,printk()函数为内核空间里边的信息打印函数,就像c编程时用的printf()函数一样,专供内核中的信息展示用,他没有调用printf()的原因是在编译内核时还没有c的库函数可以供调用。在linux中,可以像使用printf()一样使用printk(),也可以加上优先级使用,比如如下: printk(KERN_ALERT LCD light exit./n);printk()函数有八个优先级定义,如下:#define KERN_EMERG <0> /* system is unusable*/#define KERN_ALERT <1> /* action must be taken immediately*/#define KERN_CRIT <2> /* critical conditions*/#define KERN_ERR <3> /* error conditions */#define KERN_WARNING <4> /* warning conditions */#define KERN_NOTICE <5> /* normal but significant condition*/#define KERN_INFO <6> /* informational */#define KERN_DEBUG <7> /* debug-level messages */ 当printk()优先级低于int console_loglevel,信息将直接打印在你的终端上(x 环境下好像不行)。如果同时 syslogd和klogd都在运行,信息也同时添加在文件 /var/log/messages,而不管是否显示在控制台上与否。我们使用像 KERN_ALERT这样的高优先级,来确保printk()将信息输出到控制台而不是只是添加到日志文件中。当你编写真正的实用的模块时,你应该针对可能遇到的情况使用合适的优先级。 /var/log/messages里的信息可以使用 cat /var/log/messages 进行查看。控制台的日志级别可以使用 cat /peoc/sys/kernel/printk 查看。控制台的日志级别可以用 echo 3 > /peoc/sys/kernel/printk 改变(3为要写入的值,可改变)。

4. linux中的dmesg命令输出的内容是从哪个文件里面获取的

  1. dmesg 并不与具体的磁盘文件相对应,dmesg 输出的是内核ring buffer 内容

  2. ring buffer 对应的文件描述符也许与系统相关,对ubuntu 而言 ,dmesg 读取的文件描述符是 /dev/kmsg.

5. 如何使用dmesg命令查看输出结果

dmesg是一种程序,用于检测和控制内核环缓冲。程序用来帮助用户了解系统的启动信息。比如将系统启动信息保存到文件中: $ sudo dmesg > messages.txt 打印输出最近一次的信息: $ sudo dmesg | tail -f

6. dmesg 这个命令主要是干什么用

dmesg Linux 系统的命令

来自内核和 init 脚本的引导消息通常在屏幕上停留的时间很短,您可能会注意到一个错误消息,但在您能看清楚它以前,它已经消失了。在这种情况下,您可以在系统引导之后到两个地方去查看以找出错误(并且有希望找到修复它的方法)。

如果错误出现在内核正在装入或检测硬件设备的时候,您可以用 dmesg 命令获得一个内核日志的副本。

# dmesg | head -1
Linux version 2.4.16 ([email protected]) (gcc version 2.95.3 20010315 (release)) #1 Sat Jan 12 19:23:04 EST 2002

嘿,我们认得那一行!这就是内核在装入时打印的第一行信息。的确,如果您将 dmesg 的输出传送到分页程序上,您会看到内核在引导时打印的所有消息以及内核在那段时间已打印到控制台的所有消息。

7. 下面命令显示信息意思是()

-a或--all:显示全部的信息;
-m或--machine:显示电脑类型;
-n或-nodename:显示在网络上的主机名称;
-r或--release:显示操作系统的发行编号;
-s或--sysname:显示操作系统名称;
-v:显示操作系统的版本;
-p或--processor:输出处理器类型或"unknown";
-i或--hardware-platform:输出硬件平台或"unknown";
-o或--operating-system:输出操作系统名称;
--help:显示帮助;
--version:显示版本信息。
扩展内容:
hostname命令:显示或设置系统的主机名
注意:

使用hostname命令设置主机名后,系统并不会永久保存新的主机名,重新启动机器之后还是原来的主机名。如果需要永久修改主机名,需要同时修改/etc/hosts和/etc/sysconfig/network的相关内容。
dmesg命令:打印或控制内核环缓冲区(显示开机信息,用于诊断系统故障。)

格式:dmesg [options]
stat命令用于查看文件的具体存储信息和时间等信息

格式为“stat 文件名称”
命令:估计文件空间使用情况

格式: [OPTION]... [FILE]...
df命令:显示文件系统磁盘空间使用情况

格式:df [OPTION]... [FILE]...
资料来源于网络若侵权联系删

8. linux查看日志的命令是具体怎么用

tail -f 日志文件路径主要用于查看实时的日志记录,属于动态记录查看。

cat日志路径主要用于查看静态的历史日志记录,一般跟路径名称,常见的这周类型的日志记录一般用管道符进行过滤筛选自己所需的记录。

dmesg主要用于调试脚本或者命令,出现异常中断来排查错误原因显示的。

tail -n 10 test.log,查询日志尾部最后10行的日志。

tail -n +10 test.log,查询10行之后的所有日志。

head -n 10 test.log,查询日志文件中的头10行日志。

head -n -10 test.log,查询日志文件除了最后10行的其他所有日志。

操作命令

首先介绍一个名词“控制台(console)”,它就是我们通常见到的使用字符操作界面的人机接口,例如dos。我们说控制台命令,就是指通过字符界面输入的可以操作系统的命令。

例如dos命令就是控制台命令。要了解的是基于Linux操作系统的基本控制台命令。有一点一定要注意,和dos命令不同的是,Linux的命令(也包括文件名等等)对大小写是敏感的,也就是说,如果你输入的命令大小写不对的话,系统是不会做出你期望的响应的。

阅读全文

与dmesg命令详解相关的资料

热点内容
linux如何升级php版本升级 浏览:841
二级程序员c语言难度 浏览:351
批处理编译qt 浏览:65
铁友app怎么查询机票订单 浏览:197
myeclipselinux破解版 浏览:417
批处理命令语法不正确 浏览:889
pdf合并成一个pdf在线 浏览:383
柱加密区构造要求 浏览:514
地板木龙骨标准跟加密区别 浏览:150
解压放松的好地方河南 浏览:965
搜狗怎么移动到文件夹 浏览:617
文件自动选择到文件夹 浏览:794
赠送的app怎么在ipad下载 浏览:508
颈椎解压后神经恢复 浏览:849
怎么看app订阅扣费 浏览:314
linux系统的负载均衡 浏览:419
遇到挫折解压视频 浏览:778
什么指令看服务器运行负载 浏览:84
因硕智能门锁卡片是加密的么 浏览:336
为什么会服务器不可用 浏览:290