dmesg: algunos comandos prácticos para obtener información y solucionar problemas

junio 14, 2021 , 0 Comments

dmesg

El comando de Linux dmesg es una herramienta bastante popular de la que ya hemos hablado en otras ocasiones en LxA. Gracias a ella se pueden recuperar y mostrar mensajes desde el ring buffer o buffer de anillo del kernel Linux. Esos mensajes son muiy interesantes, ya que aportan mucha información sobre el equipo, tanto a nivel de hardware como del sistema.

Toda esa información puede ser valiosa (arranque, memoria, CPU, dispositivos, módulos,…) a la hora de detectar problemas y solucionarlos. Por eso, deberías conocer algunos comandos prácticos que resultan esenciales para comprobar si existe algún problema en tu máquina y que te aporte pistas de cómo atajarlo.

Para poder obtener dicha información, puedes usar los siguientes comandos:

  • Para listar todos los controladores cargados en el kernel Linux puedes usar el siguiente comando:
<br data-mce-bogus="1">

dmesg | less<br data-mce-bogus="1">

 

 

  • Listar todos los dispositivos detectados que se llamen «nombre» (sustituye nombre por lo que necesites, como puede ser sda, gpu, usb, dma, memory…):

dmesg | grep -i nombre

 

  • Visualizar mensajes de error que pueden indicar los problemas que existen en el sistema (también puedes buscar otros niveles de avisos, como info, warning, etc.):

dmesg | grep -i error

 

  • Monitorizar el ring buffer del kernel en tiempo real, para ver lo que está sucediendo ahora (puedes probar a hacer algunas acciones en el sistema para ver que van apareciendo nuevos menajes, por ejemplo conectar y desconectar una memoria USB):

watch "dmesg | tail -20"

  • También puedes eliminar el registro del ring buffer para dejarlo limpio. Para ello puedes usar el siguiente comando:

dmesg -C

Si te interesa ver los logs o registros del ring buffer, debes saber que están almacenados en /var/log/dmesg. Y recuerda que éste fichero existirá incluso si estás usando systemd en tu distro, igual que lo está en Sys V init y similares. De hecho, también se encuentra en texto plano, por lo que podrás usar el concatenador (cat) para visualizarlo…


Some say he’s half man half fish, others say he’s more of a seventy/thirty split. Either way he’s a fishy bastard.