5.3 dmesg:系统启动异常诊断

5.3.1 命令详解

【命令星级】 ★★★☆☆

【功能说明】

​ dmesg用于显示内核环形缓冲区(kernel-ring buffer)的内容。在进行系统引导时,内核会将硬件和模块初始化相关的信息写到这个缓冲区中。内核环形缓冲区中的消息对于诊断系统问题非常有用。

​ 内核环形缓冲区的内容同时会保存在/var/log目录中,即名称为dmesg的文件里。可通过如下命令进行查看:

[root@centos7 ~]# ll -h /var/log/dmesg
-rw-r--r--. 1 root root 119K Oct 24 20:49 /var/log/dmesg

​ 【语法格式】

dmesg [option]
dmesg [选项]

​ **说明:**在dmesg命令及后面的选项里,每个元素之间都至少要有一个空格。

【选项说明】

​ 表5-3针对该命令的参数选项进行了说明。

​ 表5-3 dmesg命令的参数选项及说明

5.3.2 使用范例

​ **范例5-6:**查看内核环形缓冲区。

[root@centos7 ~]# dmesg |less   #通过less命令分页查看缓冲区内容,用于查看应急故障等信息。
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 3.10.0-1127.19.1.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-39) (GCC) ) #1 SMP Tue Aug 25 17:23:54 UTC 2020
[    0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-1127.19.1.el7.x86_64 root=UUID=95c7620f-87ac-46eb-90ef-bbf800bd84ed ro crashkernel=auto biosdevname=0 net.ifnames=0 rhgb quiet LANG=en_US.UTF-8
[    0.000000] e820: BIOS-provided physical RAM map:
[    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009ebff] usable
[    0.000000] BIOS-e820: [mem 0x000000000009ec00-0x000000000009ffff] reserved
[    0.000000] BIOS-e820: [mem 0x00000000000dc000-0x00000000000fffff] reserved
[    0.000000] BIOS-e820: [mem 0x0000000000100000-0x000000003fedffff] usable
[    0.000000] BIOS-e820: [mem 0x000000003fee0000-0x000000003fefefff] ACPI data
[    0.000000] BIOS-e820: [mem 0x000000003feff000-0x000000003fefffff] ACPI NVS
[    0.000000] BIOS-e820: [mem 0x000000003ff00000-0x000000003fffffff] usable
:

5.4 stat:显示文件或文件系统状态

5.4.1 命令详解

【命令星级】 ★★★☆☆

【功能说明】

​ stat命令用于详细显示文件或文件系统的状态信息。

【语法格式】

stat [option] [file]
stat [选项] [<文件或目录>]

​ **说明:**在stat命令及后面的选项里,每个元素之间都至少要有一个空格。

【选项说明】

​ 表5-4针对该命令的参数选项进行了说明。

​ 表5-4 stat命令的参数选项及说明


5.4.2 使用范例

​ **范例5-7:**查看文件的属性信息。

[root@centos7 ~]# stat /etc/hostsFile: ‘/etc/hosts’Size: 166        Blocks: 8          IO Block: 4096   regular file
#Size:文件大小。
#Blocks: 占用block数量。
#IO Block: Block总大小为4096(8*512)。
#regular file:文件类型为普通文件。
Device: 803h/2051d  Inode: 16879251    Links: 1
#Device: 设备编号的十六进制(h)和十进制(d)。
#Inode: 文件的inode值。
#Links: 文件的硬链接数。
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
#Access: 文件权限。
#Uid和Gid:用户和用户组。
Context: system_u:object_r:net_conf_t:s0
Access: 2020-10-24 20:55:47.235014226 +0800    #访问时间。
Modify: 2020-10-24 20:55:35.728013814 +0800    #修改时间。
Change: 2020-10-24 20:55:35.732013814 +0800    #状态更改时间。Birth: -

​ **范例5-8:**查看文件系统属性。

[root@centos7 ~]# stat -f /etc/hosts    #-f参数显示文件所在分区的文件系统状态而非文件状态,了解即可。File: "/etc/hosts"ID: 80300000000 Namelen: 255     Type: xfs
Block size: 4096       Fundamental block size: 4096
Blocks: Total: 4453632    Free: 3836123    Available: 3836123
Inodes: Total: 8912384    Free: 8837689

​ **范例5-9:**如何取得/etc/hosts文件的权限对应的数字内容,比如-rw-r–r–为644,请使用命令取得644这样的数字。

​ 从范例5-7可以发现,文件属性有如下一行内容:

Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)

​ 显然,可以用sed、cut、awk、grep等命令将这行内容中的644提取出来。

​ 但是这里有一个思想:当命令结果包含我们所需要的内容时,我们首先要考虑,是否有具体的参数能够一步获得我们所需的结果呢?对于上面的范例5-9,我们可使用如下命令:

[root@centos7 ~]# stat -c %a /etc/hosts
644

​ 这个方法是最简单的。同理,想要获取范例5-7结果中的其他值,可以使用其他相应的参数。

L32.linux命令每日一练 -- 第五章 Linux信息显示与搜索文件命令 -- dmesg和stat相关推荐

  1. L84.linux命令每日一练 -- 第11章 Linux系统管理命令 -- rpm和yum

    11.19 rpm:RPM包管理器 11.19.1 命令详解 ​ [命令星级] ★★★★★ ​ [功能说明] ​ rpm命令的全称是Red Hat Package Manager(Red Hat包管理 ...

  2. L46.linux命令每日一练 -- 第七章 Linux用户管理及用户信息查询命令 -- w和who

    7.13 w:显示已登录用户信息 7.13.1 命令详解 ​ [命令星级] ★★★★★ ​ [功能说明] ​ w命令可以显示已经登录系统的用户,并显示用户正在执行的命令. ​ [语法格式] w [op ...

  3. L48.linux命令每日一练 -- 第七章 Linux用户管理及用户信息查询命令 -- last、lastb和lastlog

    7.17 last:显示用户登录列表 7.17.1 命令详解 ​ [命令星级] ★★★★★ ​ [功能说明] ​ last命令能够从日志文件/var/log/wtmp读取信息并显示用户最近的登录列表. ...

  4. 【正点原子Linux连载】第三十五章 Linux内核顶层Makefile详解 -摘自【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.0

    1)实验平台:正点原子阿尔法Linux开发板 2)平台购买地址:https://item.taobao.com/item.htm?id=603672744434 2)全套实验源码+手册+视频下载地址: ...

  5. L24.linux命令每日一练 -- 第三章 文件过滤及内容编辑处理命令 -- diff和vimdiff命令

    3.17 diff:比较两个文件的不同 3.17.1 命令详解 ​ [命令星级] ★★★★☆ ​ [功能说明] ​ diff命令可以逐行比较纯文本文件的内容,并输出文件的差异. ​ [语法格式] di ...

  6. L39.linux命令每日一练 -- 第六章 文件备份与压缩命令 -- scp和rsync

    6.5 scp:远程文件复制 6.5.1 命令详解 ​ [命令星级] ★★★★★ ​ [功能说明] ​ scp命令用于在不同的主机之间复制文件,它采用SSH协议来保证复制的安全性.scp命令每次都是全 ...

  7. L38.linux命令每日一练 -- 第六章 文件备份与压缩命令 -- zip和unzip

    6.3 zip:打包和压缩文件 6.3.1 命令详解 ​ [命令星级] ★★★★☆ ​ [功能说明] ​ zip压缩格式是Windows与Linux等多平台通用的压缩格式.和gzip命令相比,zip命 ...

  8. L23.linux命令每日一练 -- 第三章 文件过滤及内容编辑处理命令 -- iconv和dos2unix命令

    3.15 iconv:转换文件的编码格式 3.15.1 命令详解 ​ [命令星级] ★★★☆☆ ​ [功能说明] ​ iconv命令用于转换文件的编码格式. ​ [语法格式] iconv [optio ...

  9. L29.linux命令每日一练 -- 第四章 文本处理三剑客 -- sed命令

    4.2 sed:流编辑器 4.2.1 sed命令语法及参数说明 ​ [命令星级] ★★★★★ ​ [功能说明] ​ sed是Stream Editor(字符流编辑器)的缩写,简称流编辑器.它是Linu ...

最新文章

  1. 微信小程序客服功能 把当前页面的信息卡片发送给客服
  2. java里冒泡排序编程案例_java冒泡排序小实例
  3. Javascript实现表格的全选框
  4. zentao这php,ZenTaoPHP后面计划
  5. mysql数据库的触发器_Mysql数据库触发器
  6. html 正则表达式 中文,正则表达式的中文搜索
  7. You must install #39;hg#39; on your build machine
  8. Scala函数作为函数的返回值
  9. AAAI 2018论文解读 | 基于文档级问答任务的新注意力模型
  10. dart系列之:手写Library,Library编写实践
  11. 操作系统:电脑的回收站的秘密你知道吗?
  12. SQL Server中的text类型字段要如何查询?
  13. poj 1226 Substrings kmp 好题,我调试了一晚上啊!!汗
  14. Linux中grep详解
  15. 学了Java可以做什么工作
  16. word,wps设置页眉和页码
  17. 【博学谷学习记录】超强总结,用心分享 | 【Lunux】Manjaro手动升级icu依赖库安装MySQL以及Navicat
  18. Java集合这样子学习
  19. Jquery Jqprint—随着Jquery Jqprint实现网页打印
  20. 苹果手机服务器找不到,电脑找不到苹果手机热点

热门文章

  1. 写时复制技术(摘自C语言中文网)
  2. 公司于我有恩,辞职让我怎么说出口???
  3. 微信小程序:最新wordpress黑金壁纸微信小程序 二开修复版源码下载支持流量主收益
  4. 深入理解acquire和release原理源码及lock独有特性acquireInterruptibly和tryAcquireNanos
  5. 欧姆龙e5dc温控器_使用欧姆龙温控器E5DC-RX2ASM-802必读如下
  6. ER Win 的官方下载地址
  7. 学习笔记 在B站上学习了pink老师的js,有个循环的作业:简易ATM
  8. Datawhale 7月学习——李弘毅深度学习:深度学习介绍和反向传播机制
  9. OpenJudge计算概论-最大奇数与最小偶数之差的绝对值
  10. koa实战 (一):项目搭建