一、dmesg命令簡介
dmesg是一個Linux系統命令,用來查看內核和硬件的消息。它可以顯示系統引導時的所有消息,以及在運行期間發生的任何硬件或內核更改的消息。這個命令可以幫助你查找系統出現問題的原因,或者是為了診斷硬件問題。
$ dmesg
它會輸出大量信息,您可以使用管道和grep來過濾輸出。
$ dmesg | grep usb [ 0.831358] usbcore: registered new interface driver usbfs [ 0.831366] usbcore: registered new interface driver hub [ 0.831380] usbcore: registered new device driver usb [ 1.105681] usb 1-1: new high-speed USB device number 2 using ehci-pci [ 1.673905] usb 2-1: new high-speed USB device number 2 using ehci-pci [ 1.759759] input: USB Optical Mouse as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1:1.0/0003:046D:C077.0001/input/input2
二、查看系統啟動過程中的消息
dmesg命令可以用來查看系統啟動過程中的消息。這些消息在內核初始化時輸出,並且是重要的調試工具。您可以使用命令單獨查看啟動時的消息:
$ dmesg | grep -i "boot" [ 0.000000] microcode: microcode updated early to revision 0x1e, date = 2018-11-29 [ 0.000000] Linux version 5.4.0-28-generic (buildd@lgw01-amd64-045) (gcc version 9.3.0 (Ubuntu 9.3.0-10ubuntu2)) #32-Ubuntu SMP Wed Apr 22 17:40:10 UTC 2020 (Ubuntu 5.4.0-28.32-generic 5.4.30) [ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-5.4.0-28-generic root=UUID=81e8a3e5-010c-4d75-9c45-8d1ed97a01c6 ro quiet splash vt.handoff=7
三、查看硬件相關消息
dmesg命令也可以用來查看硬件相關的消息。例如,如果您想查看您的系統是否識別了某個USB設備,您可以使用以下命令:
$ dmesg | grep -i "usb" [ 0.831358] usbcore: registered new interface driver usbfs [ 0.831366] usbcore: registered new interface driver hub [ 0.831380] usbcore: registered new device driver usb [ 1.105681] usb 1-1: new high-speed USB device number 2 using ehci-pci [ 1.673905] usb 2-1: new high-speed USB device number 2 using ehci-pci [ 1.759759] input: USB Optical Mouse as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1:1.0/0003:046D:C077.0001/input/input2
四、查看內核相關消息
dmesg還可以用來查看與內核相關的消息。例如,您可以使用以下命令來查看內核模塊的輸出:
$ dmesg | grep -i "module" [ 0.000000] Linux version 5.4.0-28-generic (buildd@lgw01-amd64-045) (gcc version 9.3.0 (Ubuntu 9.3.0-10ubuntu2)) #32-Ubuntu SMP Wed Apr 22 17:40:10 UTC 2020 (Ubuntu 5.4.0-28.32-generic 5.4.30) [ 0.097157] ACPI: Added _OSI(Module Device) [ 6.667433] snd_hda_codec_hdmi hdaudioC1D0: No i915 binding for Intel HDMI/DP codec [ 7.336413] vboxdrv: module verification failed: signature and/or required key missing - tainting kernel [ 7.438341] tpm_tis 00:04: 1.2 TPM (device-id 0xB, rev-id 16) [ 13.363908] vboxpci: IOMMU not found (not registered)
五、查看內存相關消息
dmesg也可以用於查看有關內存的消息。例如,您可以使用以下命令來查看系統的內存配置:
$ dmesg | grep -i "memory" [ 0.000000] e820: BIOS-provided physical RAM map: [ 0.000000] e820: mapped low 64KB of RAM reserve for EL3/Secure world [ 0.000000] e820: [mem 0x0000000000001000-0x0000000000085fff] usable [ 0.000000] e820: [mem 0x0000000000086000-0x0000000000086fff] reserved [ 0.000000] e820: [mem 0x0000000000087000-0x000000000009dfff] usable [ 0.000000] e820: [mem 0x000000000009e000-0x000000000009ffff] reserved
總結
dmesg是一個非常有用的命令,可以幫助您查看系統內核和硬件相關信息。通過使用不同的選項和過濾器,您可以很容易地找到自己需要的信息。如果您是Linux系統管理員或運維人員,了解和掌握這個命令會讓您在日常工作中更加高效。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/240391.html