Linux中用于驱动程序消息的dmesg命令

启动信息 命令也称为“驱动程序消息”或“显示消息”,用于检查内核环形缓冲区并打印内核的消息缓冲区。此命令的输出包含设备驱动程序生成的消息。

null

dmesg的使用:

当计算机启动时,系统启动期间会生成大量消息(日志)。 因此,您可以使用dmesg命令读取所有这些消息。内核环形缓冲区的内容也存储在 /var/log/dmesg 文件

当系统在启动过程中遇到任何问题时,dmesg命令非常有用,因此通过读取dmesg命令的内容,您可以实际找到问题发生的位置(因为系统启动顺序中有许多步骤)。

语法:

dmesg [options]

选项:

-C–清除:清除环形缓冲区。 -c–读取清除:打印内容后清除环形缓冲区。 -D–控制台关闭:禁用向控制台打印消息。 -E–控制台打开:启用向控制台打印消息。 -F–文件:从给定文件中读取消息。 -h–帮助:显示帮助文本。 -k–内核:打印内核消息。 -t–notime:不要打印内核的时间戳。 -u–用户空间:打印用户空间消息。

你可以查看更多选项 在这里

启动信息 命令非常大,所以为了在dmesg输出中查找特定信息,最好将dmesg命令与 较少的 格雷普 命令

dmesg | less 

or 

dmesg | grep "text_to_search"

例如: 这是 启动信息 命令时,我插入USB驱动器,然后拔掉它。 由于dmesg命令的输出量很大,所以您可以在终端上尝试输出

[6982.128179]usb 2-2:找到新的usb设备,idVendor=0930,idProduct=6544 [6982.128185]usb 2-2:新的usb设备字符串:Mfr=1,Product=2,SerialNumber=3 [6982.128188]usb 2-2:产品:DataTraveler 2.0 [6982.128190]usb 2-2:制造商:金斯顿 [6982.128193]usb 2-2:序列号:C86000886407C141DA1401A2 [6982.253866]usb存储2-2:1.0:检测到usb大容量存储设备 [6982.254035]scsi主机3:usb存储2-2:1.0 [6982.254716]usbcore:已注册的新接口驱动程序usb存储 [6982.265103]usbcore:注册的新接口驱动程序uas [6983.556572]scsi 3:0:0:0:直接访问金斯顿DataTraveler 2.0 1.00 PQ:0 ANSI:4 [6983.557750]sd 3:0:0:0:连接的scsi通用sg1类型0 [6983.557863]sd 3:0:0:0:[sdb]30310400 512字节逻辑块:(15.5 GB/14.5 GiB) [6983.558092]sd 3:0:0:0:[sdb]写保护已关闭 [6983.558095]sd 3:0:0:0:[sdb]模式检测:45 00 [6983.558314]sd 3:0:0:0:[sdb]写缓存:禁用,读缓存:启用,不支持DPO或FUA [6983.560061]sdb:sdb1 [6983.563403]sd 3:0:0:0:[sdb]连接的SCSI可移动磁盘 [7045.431954]wlp2s0:与a0:55:4f:27:bd:01解除关联(原因:1) [7049.003277]wlp2s0:通过a0:55:4f:27:bd:01进行身份验证 [7049.006680]wlp2s0:将身份验证发送到a0:55:4f:27:bd:01(尝试1/3) [7049.015786]wlp2s0:已验证 [7049.021441]wlp2s0:与a0:55:4f:27:bd:01关联(尝试1/3) [7049.038590]wlp2s0:RX AssocResp从a0:55:4f:27:bd:01(capab=0x431状态=0辅助=140) [7049.043217]wlp2s0:关联 [7049.063811]wlp2s0:按照a0:55:4f:27:bd:01的广告,将发送功率限制为30(30–0)dBm [7129.257920]usb 2-2:usb断开连接,设备编号3

由于输出总是很大的,建议使用dmesg命令和grep命令。 例如:

dmesg | grep "usb"

它提供输出

[5944.925979]usb 2-1:使用XHCD的2号新低速usb设备 [5945.085658]usb 2-1:找到新的usb设备,idVendor=04d9,idProduct=1702 [5945.085663]usb 2-1:新的usb设备字符串:Mfr=1,Product=2,SerialNumber=0 [5945.085666]usb 2-1:产品:usb键盘 [5945.085669]usb 2-1:制造商: [5945.222536]输入:USB键盘as/devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0/0003:04D9:1702.0003/input/input19 [5945.282554]hid通用0003:04D9:1702.0003:输入,hidraw2:USB hid v1。10 USB-0000:00:14.0-1/input0上的键盘[USB键盘] [5945.284803]输入:USB键盘as/devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.1/0003:04D9:1702.0004/input/input20 [5945.342340]hid通用0003:04D9:1702.0004:输入,hidraw3:USB hid v1。10 USB-0000:00:14.0-1/input1上的设备[USB键盘] [6981.985310]usb 2-2:使用XHCD的3号新高速usb设备 [6982.128179]usb 2-2:找到新的usb设备,idVendor=0930,idProduct=6544 [6982.128185]usb 2-2:新的usb设备字符串:Mfr=1,Product=2,SerialNumber=3 [6982.128188]usb 2-2:产品:DataTraveler 2.0 [6982.128190]usb 2-2:制造商:金斯顿 [6982.128193]usb 2-2:序列号:C86000886407C141DA1401A2 [6982.253866]usb存储2-2:1.0:检测到usb大容量存储设备 [6982.254035]scsi主机3:usb存储2-2:1.0 [6982.254716]usbcore:已注册的新接口驱动程序usb存储 [6982.265103]usbcore:注册的新接口驱动程序uas [7129.257920]usb 2-2:usb断开连接,设备编号3

带有选项的输出: 例如:

dmesg -t 

-t指定带有时间戳的输出。 输出:

usb 2-2:使用xhci_hcd的3号新高速usb设备 usb 2-2:找到新的usb设备,idVendor=0930,idProduct=6544 usb 2-2:新usb设备字符串:Mfr=1,Product=2,SerialNumber=3 usb 2-2:产品:DataTraveler 2.0 usb 2-2:制造商:金斯顿 usb 2-2:序列号:C86000886407C141DA1401A2 usb存储2-2:1.0:检测到usb大容量存储设备 scsi主机3:usb存储2-2:1.0 usbcore:已注册的新接口驱动程序usb存储 usbcore:注册的新接口驱动程序uas scsi 3:0:0:0:直接访问金斯顿DataTraveler 2.0 1.00 PQ:0 ANSI:4 sd 3:0:0:0:附加的scsi通用sg1类型0 sd 3:0:0:0:[sdb]30310400 512字节逻辑块:(15.5 GB/14.5 GiB) sd 3:0:0:0:[sdb]写保护已关闭 sd 3:0:0:0:[sdb]模式检测:45 00 sd 3:0:0:0:[sdb]写缓存:已禁用,读缓存:已启用,不支持DPO或FUA sdb:sdb1 sd 3:0:0:0:[sdb]连接的SCSI可移动磁盘 wlp2s0:与a0:55:4f:27:bd:01解除关联(原因:1) wlp2s0:使用a0:55:4f:27:bd:01进行身份验证 wlp2s0:将授权发送到a0:55:4f:27:bd:01(尝试1/3) wlp2s0:已验证 wlp2s0:与a0:55:4f:27:bd:01关联(尝试1/3) wlp2s0:RX AssocResp从a0:55:4f:27:bd:01(capab=0x431状态=0辅助=140) wlp2s0:关联 wlp2s0:将发送功率限制为30(30–0)dBm,如a0:55:4f:27:bd:01所示 usb 2-2:usb断开连接,设备编号3

参考资料: 1) http://www.linfo.org/dmesg.html 2) 维基百科dmesg

曼迪星

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享