Uso del comando dmesg con ejemplos
Uso del comando dmesg con ejemplos, en sistemas basados en Linux / Unix. Al iniciar un sistema Linux, el kernel identifica los dispositivos de hardware disponibles en el sistema. A medida que el kernel los va detectando e identificando, se generan unos registros que se escriben en un buffer (en anillo) del Kernel. Este buffer en anillo, también conocido como buffer cíclico o circular, es específico para manejar el registro interno del Kernel. Saber leer este registro es importante, pues más de una vez puede salvar tu sistema. Recuerda que como en cualquier registro, en este también se guardan los errores. Con el comando dmesg no solo podrás ver todo el registro, sino que además podrás identificar de manera simple los errores por tipo, algo especialmente útil para nosotros. Vemos cómo se trabaja con este comando.
Uso de dmesg
Uso del comando dmesg con ejemplos
Su forma de uso simple, imprime el buffer al completo. dmesg Ejemplo de salida. sergio@sololinux:~$ dmesg Linux version 5.4.0-81-generic (buildd@lgw01-amd64-051) (gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu1~18.04)) #91~18.04.1-Ubuntu SMP Fri Jul 23 13:36:29 UTC 2021 (Ubuntu 5.4.0-81.91~18.04.1-generic 5.4.128) Command line: BOOT_IMAGE=/boot/vmlinuz-5.4.0-81-generic root=UUID=77674f63-7f05-4b96-a2aa-125cd616afcb ro fsck.mode=force fsck.repair=yes KERNEL supported cpus: Intel GenuineIntel AMD AuthenticAMD Hygon HygonGenuine Centaur CentaurHauls zhaoxin Shanghai x86/fpu: x87 FPU will use FXSAVE BIOS-provided physical RAM map: BIOS-e820: usable BIOS-e820: ACPI NVS BIOS-e820: usable BIOS-e820: reserved BIOS-e820: usable BIOS-e820: reserved BIOS-e820: usable BIOS-e820: reserved BIOS-e820: ACPI NVS BIOS-e820: ACPI data BIOS-e820: usable BIOS-e820: reserved BIOS-e820: reserved BIOS-e820: reserved BIOS-e820: usable NX (Execute Disable) protection: active e820: update usable ==> usable e820: update usable ==> usable extended physical RAM map: reserve setup_data: usable reserve setup_data: ACPI NVS etc........etc............................. Si prefieres imprimir sin formato... dmesg -r Imagen de ejemplo.
Salida de dmesg sin formato Cuando tienes errores, lo recomendable es que apliques los filtros que vienen incorporados con el comando. Así podrás identificar el error, de forma sencilla y rápida. Los filtros disponibles son los siguientes: - emerg - Error que impide el funcionamiento del sistema correctamente. - alert - Error que requiere intervención inmediata. - crit - Sistema bajo condiciones críticas. - err - Sistema bajo condiciones de error. - warn - Advertencias del sistema. - debug - Advertencias de depuración. - notice - Condiciones normales, pero debes prestar atención al aviso. - info - Información general. Estos filtros de mensajes, los debes usar con esta sintaxis... dmesg --level=alert, Ejemplos de uso. dmesg --level=alert,emerg ## dmesg --level=alert,alert ## dmesg --level=alert,err ## dmesg --level=alert,crit ## dmesg --level=alert,warn ## dmesg --level=alert,debug ## dmesg --level=alert,notice ## dmesg --level=alert,info Imagen con ejemplos de uso, en el que podemos observar una serie de errores y alertas. Tendremos que revisar que sucede, aunque en realidad es una vieja tarjeta SD (no me preocupa mucho).
Ejemplos de dmesg con filtros También tienes la opción de imprimir el buffer y, posteriormente borrar el ciclo del anillo. dmesg -c Ejemplo... sergio@sololinux:~$ dmesg -c usb 1-4: USB disconnect, device number 10 usb 1-4: new high-speed USB device number 11 using xhci_hcd usb 1-4: New USB device found, idVendor=0bda, idProduct=0177, bcdDevice=77.11 usb 1-4: New USB device strings: Mfr=1, Product=2, SerialNumber=3 usb 1-4: Product: USB2.0-CRW usb 1-4: Manufacturer: Generic usb 1-4: SerialNumber: 20121112761000000 ums-realtek 1-4:1.0: USB Mass Storage device detected scsi host2: usb-storage 1-4:1.0 scsi 2:0:0:0: Direct-Access Generic- SD/MMC/MS PRO 1.00 PQ: 0 ANSI: 4 scsi 2:0:0:0: Attached scsi generic sg1 type 0 sd 2:0:0:0: 1950720 512-byte logical blocks: (999 MB/953 MiB) sd 2:0:0:0: Write Protect is off sd 2:0:0:0: Mode Sense: 2f 00 00 00 sd 2:0:0:0: Write cache: disabled, read cache: enabled, doesn't support DPO or FUA sdb: sdb1 sd 2:0:0:0: Attached SCSI removable disk dmesg: fallo al leer el «buffer» del núcleo: Operación no permitida sergio@sololinux:~$ Ahora especificamos el dispositivo del cual quieres ver los mensajes, en nuestro caso USB. dmesg | grep -i usb
Avisos de los dispositivos USB Si tienes problemas con el anillo, puedes probar a reducir o aumentar su tamaño. dmesg -s 1024 Es evidente, que este comando tiene muchas más opciones y filtros. Si quieres aprender más sobre él, revisa su manual integrado en consola. man dmesg Canales de Telegram: Canal SoloLinux – Canal SoloWordpress Espero que este artículo te sea de utilidad, puedes ayudarnos a mantener el servidor con una donación (paypal), o también colaborar con el simple gesto de compartir nuestros artículos en tu sitio web, blog, foro o redes sociales. Chat de SoloLinux en Telegram Read the full article














