Monitoreo Básico del Sistema desde la CLI

¡Hola, aspirantes a administradores de sistemas y entusiastas de Linux!

Hoy, en este artículo, nos enfocaremos en una habilidad esencial para mantener cualquier sistema en óptimas condiciones: el Monitoreo Básico del Sistema desde la Línea de Comandos (CLI).

Ser capaz de observar lo que ocurre dentro de tu Linux te permite:

  • Prevenir problemas: Detectar a tiempo un disco casi lleno o un uso excesivo de RAM.
  • Diagnosticar la lentitud: Identificar qué recursos están siendo un cuello de botella.
  • Asegurar el funcionamiento: Confirmar que todo está operando como se espera.
  • Planificar el crecimiento: Saber cuándo necesitas más recursos de hardware.

¡Es hora de equiparte con el kit de herramientas de monitoreo de un verdadero profesional!

1. Espacio en Disco: df (Disk Free)

El disco duro es la base de todo. Si se llena, tu sistema puede volverse inestable o dejar de funcionar. df es tu primer indicador:

  • df -h: Muestra el espacio libre y usado en todos tus sistemas de archivos montados en un formato legible (GB, MB).
  • df -hT /ruta: Similar, pero especificando la ruta de una partición o punto de montaje y mostrando su tipo de sistema de archivos (ej., df -hT /).

Columnas clave: Filesystem (la partición), Size (total), Used (usado), Avail (disponible), Use% (porcentaje de uso, ¡cuidado si se acerca al 100%!) y Mounted on (dónde está accesible).

2. ¿Qué Ocupa Mi Espacio? du (Disk Usage)

Si df te dice que el disco está lleno, du te ayuda a encontrar a los “culpables” en directorios específicos:

  • du -h /ruta/del/directorio: Muestra el tamaño total de un directorio y sus subdirectorios en formato legible.
  • du -sh /ruta/del/directorio: Muestra solo el tamaño total resumido del directorio especificado, sin desglosar subdirectorios.
  • du -sh *: Útil dentro de un directorio para ver el tamaño total de cada archivo o subdirectorio.
  • Ejemplo práctico: du -sh /var/log para ver si tus logs están creciendo demasiado.

df y du son un dúo inseparable para una gestión eficiente del almacenamiento.

3. Uso de Memoria RAM: free (Memory Usage)

La RAM es crucial para la velocidad. free te da una visión clara de su uso:

  • free -h: Muestra la cantidad de memoria RAM libre y usada (incluyendo swap) en un formato legible.
  • Columnas clave:
    • total: Memoria RAM total.
    • used: Memoria actualmente ocupada.
    • free: Memoria sin usar.
    • buff/cache: Memoria que el kernel usa para optimizar operaciones de disco, que puede ser liberada si se necesita para aplicaciones.
    • available: La memoria real que está disponible para nuevas aplicaciones (¡la más importante!).
    • Swap: Memoria de intercambio (espacio en disco usado como RAM extendida, indica que la RAM física es insuficiente si se usa mucho).

Si available es consistentemente bajo y Swap alto, tu sistema está sufriendo de falta de RAM.

4. Información del Sistema: uname y uptime

Estos comandos te dan una “tarjeta de identificación” rápida de tu sistema:

  • uname -a: Muestra información detallada sobre tu sistema operativo y el kernel de Linux (versión, arquitectura, distribución, etc.). Es fundamental para soporte técnico.
  • uptime: Muestra cuánto tiempo lleva tu sistema funcionando sin reiniciarse, el número de usuarios conectados y, crucialmente, el promedio de carga del sistema (load average) en los últimos 1, 5 y 15 minutos. Un load average alto puede indicar que tu CPU está bajo una carga pesada.

5. Los Ojos y Oídos del Sistema: dmesg y journalctl (Logs)

Cuando las cosas van mal, los logs son tu mejor amigo para el diagnóstico:

  • dmesg (Display Message):
    • Muestra los mensajes del buffer del kernel. Aquí encontrarás información sobre el hardware detectado durante el arranque, errores de controladores (drivers) y fallos de bajo nivel.
    • Ejemplo: dmesg | less (para paginar) o dmesg | grep -i error (para buscar errores).
  • journalctl (Journal Control):
    • La herramienta moderna y poderosa para consultar los logs del sistema gestionados por systemd-journald. Contiene eventos de aplicaciones, servicios, el kernel y más.
    • journalctl -f: Muestra los logs en tiempo real, muy útil para ver lo que sucede mientras pruebas algo.
    • journalctl -u nombre_servicio: Muestra logs de un servicio específico (ej., journalctl -u sshd).
    • journalctl -p err: Muestra solo mensajes de nivel de error.
    • journalctl --since "2 hours ago": Filtra los logs por un periodo de tiempo.

Los logs son tus ojos y oídos en el sistema, ¡indispensables para la resolución de problemas!

¡Manos a la Obra! Actividad Práctica de Monitoreo

No hay mejor forma de aprender que practicando. Sigue la actividad en nuestro video tutorial y:

  • Verifica el espacio en disco con df y du.
  • Monitorea tu RAM con free.
  • Obtén información del sistema con uname y uptime.
  • Explora los mensajes del kernel con dmesg y los logs del sistema con journalctl.