日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

【Linux】一步一步学Linux——dmesg命令(74)

發布時間:2024/4/21 linux 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Linux】一步一步学Linux——dmesg命令(74) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

00. 目錄

文章目錄

    • 00. 目錄
    • 01. 命令概述
    • 02. 命令格式
    • 03. 常用選項
    • 04. 參考示例
    • 05. 附錄

01. 命令概述

dmesg命令被用于檢查和控制內核的環形緩沖區。kernel會將開機信息存儲在ring buffer中。您若是開機時來不及查看信息,可利用dmesg來查看。開機信息保存在/var/log/dmesg文件里。

02. 命令格式

dmesg [選項]

03. 常用選項

選項:-C, --clear 清除內核環形緩沖區(ring butter)-c, --read-clear 讀取并清除所有消息-D, --console-off 禁止向終端打印消息-d, --show-delta 顯示打印消息之間的時間差-e, --reltime 以易讀格式顯示本地時間和時間差-E, --console-on 啟用向終端打印消息-F, --file <文件> 用 文件 代替內核日志緩沖區-f, --facility <列表> 將輸出限制為定義的設施-H, --human 易讀格式輸出-k, --kernel 顯示內核消息-L, --color 顯示彩色消息-l, --level <列表> 限制輸出級別-n, --console-level <級別> 設置打印到終端的消息級別-P, --nopager 不將輸出通過管道傳遞給分頁程序-r, --raw 打印原生消息緩沖區-S, --syslog 強制使用 syslog(2) 而非 /dev/kmsg-s, --buffer-size <大小> 查詢內核環形緩沖區所用的緩沖區大小-T, --ctime 顯示易讀的時間戳(如果您使用了SUSPEND/RESUME 則可能不準)-t, --notime 不打印消息時間戳-u, --userspace 顯示用戶空間消息-w, --follow 等待新消息-x, --decode 將設施和級別解碼為可讀的字符串-h, --help 顯示此幫助并退出-V, --version 輸出版本信息并退出支持的日志設施:kern - 內核消息user - 隨機的用戶級消息mail - 郵件系統daemon - 系統守護進程auth - 安全/認證消息syslog - syslogd 內部生成的消息lpr - 行打印機子系統news - 網絡新聞子系統支持的日志級別(優先級):emerg - 系統無法使用alert - 操作必須立即執行crit - 緊急條件err - 錯誤條件warn - 警告條件notice - 正常但重要的條件info - 信息debug - 調試級別的消息

04. 參考示例

4.1 列出加載到內核中的所有驅動

dmesg命令設備故障的診斷是非常重要的。在dmesg命令的幫助下進行硬件的連接或斷開連接操作時,我們可以看到硬件的檢測或者斷開連接的信息。dmesg命令在多數基于Linux和Unix的操作系統中都可以使用。

[root@itcast ~]# dmesg

4.2 列出所有被檢測到的硬件

要顯示所有被內核檢測到的硬盤設備,你可以使用grep命令搜索sda關鍵詞

[root@itcast ~]# dmesg | grep sda [ 3.051454] sd 0:0:0:0: [sda] 209715200 512-byte logical blocks: (107 GB/100 GiB) [ 3.051559] sd 0:0:0:0: [sda] Write Protect is off [ 3.051562] sd 0:0:0:0: [sda] Mode Sense: 61 00 00 00 [ 3.051700] sd 0:0:0:0: [sda] Cache data unavailable [ 3.051702] sd 0:0:0:0: [sda] Assuming drive cache: write through [ 3.053408] sda: sda1 sda2 sda3 [ 3.054299] sd 0:0:0:0: [sda] Attached SCSI disk [ 3.558354] XFS (sda3): Mounting V5 Filesystem [ 4.188185] XFS (sda3): Ending clean mount [ 12.636995] Adding 4194300k swap on /dev/sda2. Priority:-1 extents:1 across:4194300k FS [ 12.922553] XFS (sda1): Mounting V5 Filesystem [ 14.708567] XFS (sda1): Ending clean mount [root@itcast ~]#

4.3 只輸出dmesg命令的前10行日志

[root@itcast ~]# dmesg | head [ 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-862.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-28) (GCC) ) #1 SMP Fri Apr 20 16:44:24 UTC 2018 [ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.10.0-862.el7.x86_64 root=UUID=6fa6fd5d-0115-4ec3-b993-19322c836a32 ro rhgb quiet LANG=zh_CN.UTF-8 [ 0.000000] Disabled fast string operations [ 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 [root@itcast ~]#

4.4 只輸出dmesg命令最后10行日志

[root@itcast ~]# dmesg | tail [117804.072174] IPv6: ADDRCONF(NETDEV_UP): ens33: link is not ready [117804.078051] e1000: ens33 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None [117804.079860] IPv6: ADDRCONF(NETDEV_UP): ens33: link is not ready [117804.079873] IPv6: ADDRCONF(NETDEV_CHANGE): ens33: link becomes ready [117831.955328] psmouse serio1: VMMouse at isa0060/serio1/input0 lost synchronization, throwing 2 bytes away. [117833.738722] psmouse serio1: resync failed, issuing reconnect request [124926.680233] IPv6: ADDRCONF(NETDEV_UP): ens33: link is not ready [124926.693764] IPv6: ADDRCONF(NETDEV_UP): ens33: link is not ready [124932.700536] e1000: ens33 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: None [124932.701799] IPv6: ADDRCONF(NETDEV_CHANGE): ens33: link becomes ready [root@itcast ~]#

4.5 搜索包含特定字符串的被檢測到的硬件

由于‘dmesg’命令的輸出實在太長了,在其中搜索某個特定的字符串是非常困難的。因此,有必要過濾出一些包含‘usb’ ‘dma’ ‘tty’ ‘memory’等字符串的日志行。grep 命令 的‘-i’選項表示忽略大小寫。

[root@itcast ~]# dmesg | grep -i usb [root@itcast ~]# dmesg | grep -i dma [root@itcast ~]# dmesg | grep -i tty [root@itcast ~]# dmesg | grep -i memory

4.6 清空dmesg緩沖區日志

[root@itcast ~]# dmesg -c

我們可以使用如下命令來清空dmesg的日志。該命令會清空dmesg環形緩沖區中的日志。但是你依然可以查看存儲在‘/var/log/dmesg’文件中的日志。你連接任何的設備都會產生dmesg日志輸出。

4.7 實時監控dmesg日志輸出

[root@itcast ~]# tail -f /var/log/dmesg [ 14.708567] XFS (sda1): Ending clean mount [ 14.880408] floppy0: no floppy controllers found [ 14.880489] work still pending [ 14.988537] device-mapper: uevent: version 1.0.3 [ 14.988785] device-mapper: ioctl: 4.37.0-ioctl (2017-09-20) initialised: dm-devel@redhat.com [ 15.604238] RPC: Registered named UNIX socket transport module. [ 15.604240] RPC: Registered udp transport module. [ 15.604241] RPC: Registered tcp transport module. [ 15.604242] RPC: Registered tcp NFSv4.1 backchannel transport module. [ 15.783627] type=1305 audit(1563324893.915:3): audit_pid=581 old=0 auid=4294967295 ses=4294967295 res=1//或者 [root@itcast ~]# watch "dmesg |tail"

05. 附錄

參考:【Linux】一步一步學Linux系列教程匯總

參考:https://linux.cn/article-3587-1.html

~]# watch “dmesg |tail”

## 05. 附錄參考:[【Linux】一步一步學Linux系列教程匯總](https://blog.csdn.net/dengjin20104042056/article/details/94669639)參考:https://linux.cn/article-3587-1.html

總結

以上是生活随笔為你收集整理的【Linux】一步一步学Linux——dmesg命令(74)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。