diff --git a/translated/tech/20140716 7 dmesg Commands for Troubleshooting and Collecting Information of Linux Systems.md b/translated/tech/20140716 7 dmesg Commands for Troubleshooting and Collecting Information of Linux Systems.md index 400a5e0866..f9b158d435 100644 --- a/translated/tech/20140716 7 dmesg Commands for Troubleshooting and Collecting Information of Linux Systems.md +++ b/translated/tech/20140716 7 dmesg Commands for Troubleshooting and Collecting Information of Linux Systems.md @@ -1,19 +1,21 @@ -在linux系统中处理故障和收集系统信息的7种‘dmesg’的用法 +Linux系统中‘dmesg’命令处理故障和收集系统信息的7种用法 ========================================================== -‘dmesg’命令显示linux内核的环形缓冲区信息,我们可以从中获得诸如系统架构,cpu,挂载的硬件,RAM等多个运行级别的大量的系统信息。当计算机启动时,系统内核(操作系统的核心部分)将会被加载到内存中。在加载的过程中会显示很多的信息,在这些信息中我们可以看到内核检测硬件设备。 + +‘dmesg’命令显示linux内核的环形缓冲区信息,我们可以从中获得诸如系统架构、cpu、挂载的硬件,RAM等多个运行级别的大量的系统信息。当计算机启动时,系统内核(操作系统的核心部分)将会被加载到内存中。在加载的过程中会显示很多的信息,在这些信息中我们可以看到内核检测硬件设备。 ![dmesg Command Examples](http://www.tecmint.com/wp-content/uploads/2014/07/dmesg-Command-Examples.png) + dmesg 命令的使用范例 ‘dmesg’命令设备故障的诊断是非常重要的。在‘dmesg’命令的帮助下进行硬件的连接或断开连接操作时,我们可以看到硬件的检测或者断开连接的信息。‘dmesg’命令在多数基于**Linux**和**Unix**的操作系统中都可以使用。 - + 下面我们展示一些最负盛名的‘dmesg’命令工具以及其实际使用举例。‘dmesg’命令的使用语法如下。 # dmesg [options...] ### 1. 列出加载到内核中的所有驱动 ### -我们可以使用如‘**more**’。 ‘**tail**’, ‘**less** ’或者‘**grep**’的文字处理工具来处理‘dmesg’命令的输出。由于dmesg日志的输出不适合在一页中完全显示,因此我们使用管道(pipe)将其输出送到more或者less命令中进行分页显示。 +我们可以使用如‘**more**’。 ‘**tail**’, ‘**less** ’或者‘**grep**’文字处理工具来处理‘dmesg’命令的输出。由于dmesg日志的输出不适合在一页中完全显示,因此我们使用管道(pipe)将其输出送到more或者less命令单页显示。 [root@tecmint.com ~]# dmesg | more [root@tecmint.com ~]# dmesg | less @@ -49,7 +51,7 @@ dmesg 命令的使用范例 [ 0.000000] NX (Execute Disable) protection: active ..... -### 列出所有被检测到的硬件 ### +###2. 列出所有被检测到的硬件 ### 要显示所有被内核检测到的硬盘设备,你可以使用‘**grep**’命令搜索‘**sda**’关键词,如下: @@ -72,6 +74,8 @@ dmesg 命令的使用范例 ### 3. 只输出dmesg命令的前20行日志 ### +在‘dmesg’命令后跟随‘head’命令来显示开始几行,‘dmesg | head -20′命令将显示开始的前20行。 + [root@tecmint.com ~]# dmesg | head -20 [ 0.000000] Initializing cgroup subsys cpuset @@ -95,9 +99,9 @@ dmesg 命令的使用范例 [ 0.000000] BIOS-e820: [mem 0x000000007dc5cc00-0x000000007dc5ebff] ACPI data [ 0.000000] BIOS-e820: [mem 0x000000007dc5ec00-0x000000007fffffff] reserved -### 只输出dmesg命令最后20行日志 ### +###4. 只输出dmesg命令最后20行日志 ### -当我们插入可以出的硬件是在‘dmesg’命令后跟随‘tail’命令来输出‘dmesg’命令的最后20行日志是非常有用的。 +在‘dmesg’命令后跟随‘tail’命令(‘ dmesg | tail -20’)来输出‘dmesg’命令的最后20行日志,当你插入可移动设备时它是非常有用的。 [root@tecmint.com ~]# dmesg | tail -20 @@ -123,6 +127,7 @@ dmesg 命令的使用范例 readahead-collector: finished ### 5. 搜索包含特定字符串的被检测到的硬件 ### + 由于‘dmesg’命令的输出实在太长了,在其中搜索某个特定的字符串是非常困难的。因此,有必要过滤出一些包含‘**usb**’ ‘**dma**’ ‘**tty**’ ‘**memory**’等字符串的日志行。[grep 命令][1] 的‘**-i**’选项表示忽略大小写。 [root@tecmint.com log]# dmesg | grep -i usb @@ -166,7 +171,7 @@ dmesg 命令的使用范例 [root@tecmint.com log]# watch "dmesg | tail -20" -**结论**:dmesg命令在系统dmesg记录实时更改或产生的情况下是非常有用的。你可以使用man dmesg来获取关于dmesg更多的信息。 +**结论**:dmesg命令在系统dmesg记录实时更改或产生的情况下是非常有用的。你可以使用man dmesg来获取更多关于dmesg的信息。 ---------- @@ -178,13 +183,13 @@ Narad Shrestha - [Facebook profile][f] - [Google+ profile][g] -他在IT领域拥有超过10年的丰富经验,其中包括各种Linux发行版,开源软件和网络。 Narad始终坚持与人分享知识和自如的运用新技术。 +他在IT领域拥有超过10年的丰富经验,其中包括各种Linux发行版,开源软件和网络工作。 Narad始终坚持与他人分享IT知识和自如地运用新技术。 -------------------------------------------------------------------------------- via: http://www.tecmint.com/dmesg-commands/ -译者:[cvsher](https://github.com/cvsher) 校对:[校对者ID](https://github.com/校对者ID) +译者:[cvsher](https://github.com/cvsher) 校对:[Caroline](https://github.com/carolinewuyan) 本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创翻译,[Linux中国](http://linux.cn/) 荣誉推出