Afortunadamente, para el sistema operativo Linux, todas estas actividades se registran en el búfer de anillo, a la que se puede acceder utilizando el comando de diagnóstico (o DMESG). El comando DMESG en Linux se puede usar para mostrar todos los mensajes relacionados con los eventos que tienen lugar dentro de su sistema operativo. Este artículo le enseñará cómo usar este comando útil en Linux.
Nota: Para este tutorial, usamos Linux Mint 20
Uso de comandos
Explicaremos el uso del comando de mensajes de diagnóstico discutiendo algunos ejemplos.
Ejemplo #1: Ver todos los mensajes de diagnóstico
Podemos ver todo tipo de mensajes de diagnóstico a la vez realizando estos pasos.
Primero, necesitamos hacer clic en el icono de acceso directo del terminal Linux Mint 20 para iniciarlo.
Puede ver el terminal recién lanzado en la imagen a continuación:
Ahora simplemente ejecutaremos el siguiente comando en el terminal:
Ejecutar este comando mostrará una larga lista de mensajes de diagnóstico en su terminal. Puede desplazarse hacia abajo para ver todos los mensajes, como se muestra en la imagen a continuación:
Ejemplo #2: Visualización de mensajes de diagnóstico Página por página
En el ejemplo anterior, la lista de mensajes de diagnóstico era muy larga y poco práctica de leer. Por lo tanto, es posible que desee ver estos mensajes página por página. que se puede hacer usando el comando menos en Linux. En el comando que se muestra a continuación, estamos tuviendo la salida del comando dmesg al comando menos para que los mensajes de diagnóstico se muestren página por página.
Puede ver la salida del comando DMESG modificado en la imagen a continuación.
Una vez que haya leído la primera página, puede presionar la barra espaciadora para moverse a la página siguiente, y así sucesivamente, hasta que se alcance la última página, como lo indica la palabra clave final en la siguiente imagen:
Ejemplo #3: Visualización de mensajes de diagnóstico con un nivel de gravedad específico
Los niveles de gravedad de los mensajes de diagnóstico varían según el propósito que sirvan. Por ejemplo, algunos mensajes transmiten información general, mientras que otros contienen advertencias. Puede elegir ver todos los mensajes de diagnóstico de un nivel de gravedad específico de la siguiente manera:
Primero, ejecute el comando dmesg -level = nivel en su terminal Linux Mint 20. Aquí, debe reemplazar el nivel con un nivel válido (E.gramo., err, advertir, información, aviso). En nuestro ejemplo, debido a que queremos ver todos los mensajes de diagnóstico del nivel de error, reemplazamos el nivel con ERR.
Este comando devolverá todos los mensajes de diagnóstico que tienen el nivel de error, como se muestra en la siguiente imagen:
Ejemplo #4: Ver la versión de Linux con el comando dmesg
Cuando ejecutamos el comando dmesg sin ningún otro parámetro, la salida era demasiado grande para ver a la vez. Junto con toda la otra información, la versión de su sistema Linux también se mostró en esa salida, pero fue difícil de localizar. Si desea ver su versión de Linux con el comando DMESG, puede ejecutar el siguiente comando en su terminal:
Ejecutar este comando mostrará la versión de Linux en su terminal como se muestra en la imagen a continuación:
Ejemplo #5: Visualización de mensajes de diagnóstico con marcas de tiempo
Un evento ocurre en un sistema operativo en un momento determinado. Para las tareas de registro y auditoría, es importante observar las marcas de tiempo de los eventos que tienen lugar dentro de su sistema operativo para que pueda averiguar cuándo ocurrió un problema. Para ver las marcas de tiempo de los mensajes de diagnóstico, puede ejecutar el comando a continuación en su terminal:
La salida en la siguiente imagen muestra las marcas de tiempo exactas, incluidos el día, la fecha y la hora, antes de cada mensaje de diagnóstico.
Ejemplo #6: Ver los mensajes de diagnóstico relacionados con un dispositivo específico
Los mensajes de diagnóstico que se muestran ejecutando el comando DMESG solo no son específicos para ningún dispositivo; En cambio, los mensajes relacionados con todos los dispositivos se muestran a la vez. Sin embargo, es posible que desee ver los mensajes de diagnóstico para un dispositivo en particular para determinar los problemas relacionados solo con ese dispositivo.
El comando dmesg le permite hacerlo ejecutando el comando dmesg | GREP -I "Dispositivo". Aquí, debe reemplazar el dispositivo con el nombre del dispositivo cuyos mensajes de diagnóstico desea ver. En nuestro caso, queremos verificar los mensajes de diagnóstico del mouse. Por lo tanto, hemos reemplazado el dispositivo con mouse.
Cuando ejecute este comando, todos los mensajes de diagnóstico relacionados con el mouse se mostrarán en su terminal, como se muestra en la siguiente imagen. Puede ver los mensajes de diagnóstico de cualquier dispositivo de E/S de la misma manera.
Ejemplo #7: Visualización de mensajes de diagnóstico con sus niveles de gravedad
Vimos los mensajes de diagnóstico de un nivel de gravedad particular en el Ejemplo #3. Sin embargo, si queremos mostrar todos los mensajes de diagnóstico con sus niveles de gravedad, entonces podemos ejecutar el comando dmesg -x. El indicador -x se puede usar con el comando dmesg para mostrar los mensajes de diagnóstico con sus niveles de gravedad.
Puede ver en la siguiente salida que aparece el nivel de gravedad de un mensaje de diagnóstico al comienzo del mensaje.
Ejemplo #8: Limpiar el historial de mensajes de diagnóstico
Miles de eventos tienen lugar en el sistema operativo que hace que su sistema operativo, y estos eventos generan una larga lista de mensajes de diagnóstico, como se muestra en el Ejemplo #1. Sin embargo, el sistema Linux también proporciona una forma de borrar este registro.
Para borrar el historial de mensajes de diagnóstico, puede ejecutar el comando sudo dmesg -c. Para borrar el historial de mensajes de diagnóstico, que es importante para fines de auditoría, debe ejecutar el comando dmesg con privilegios de sudo. De lo contrario, no se le permitirá realizar esta operación. Además, el indicador -c, junto con el comando dmesg, es responsable de borrar el registro DMESG.
Una vez que ejecute este comando, no se mostrará nada en su terminal. Por lo tanto, para verificar que el historial de mensajes de diagnóstico se haya eliminado, ejecutaremos nuevamente el comando dmesg. Esta vez, el comando DMESG no devolverá ningún mensaje de diagnóstico en su terminal porque el historial ha sido borrado.
Conclusión
Este tutorial presenta los mensajes de diagnóstico generados por el sistema operativo Linux y le muestra cómo ver las marcas de tiempo de los eventos que ocurrieron en el sistema operativo, cómo registrar todos los eventos de un nivel de gravedad específico y cómo ver los mensajes de diagnóstico relacionados con un dispositivo específico. Se pueden producir variaciones más avanzadas del comando DMESG compartida en este artículo para obtener diferentes resultados.