Guía de tecnologías

Guía práctica de smartmontools para monitorizar discos con SMART

6 min read Sistemas Actualizado 16 Oct 2025
Guía smartmontools para monitorizar discos
Guía smartmontools para monitorizar discos

Qué es SMART y por qué importa

SMART (Self-Monitoring, Analysis and Reporting Technology) es una funcionalidad integrada en discos duros modernos que recopila atributos y autoevaluaciones para detectar problemas antes de una falla completa. smartmontools es un paquete de software libre multiplataforma que consulta esos atributos y automatiza pruebas. Definición: atributo SMART — una métrica interna del disco que refleja su estado (ej. recuentos de sectores reasignados, temperatura, fallos de lectura).

Importante: SMART no garantiza predecir todos los fallos; complementa, pero no sustituye, una política de copias de seguridad y rotación de medios.

Variantes de intención cubiertas

  • Cómo usar smartmontools
  • Monitorización SMART de discos duros
  • Comandos smartctl básicos
  • Configurar smartd para alertas
  • Pruebas cortas y extendidas del disco

Instalación en distribuciones comunes

En Debian o Ubuntu, smartmontools está en los repositorios oficiales. Instala con:

sudo apt-get update
sudo apt-get install smartmontools

En Fedora o sistemas basados en RHEL que usen yum:

sudo yum install smartmontools

El paquete instala dos utilidades principales: smartctl (interactiva) y smartd (demonio para comprobaciones periódicas).

smartctl: uso interactivo y pruebas puntuales

smartctl requiere permisos de root. Opera sobre el dispositivo físico (por ejemplo /dev/sda), no sobre particiones (/dev/sda1).

Información básica del disco

Para mostrar información general del disco:

sudo smartctl -i /dev/sda

Información del disco mostrando si SMART está disponible y habilitado.

La salida indica si SMART está soportado y activado. Si está soportado pero no activado, habilítalo:

sudo smartctl -s on /dev/sda

Comprobar el estado de salud

Para obtener el estado rápido que resume si el disco considera que está bien:

sudo smartctl -H /dev/sda

Salida de smartctl mostrando si el disco PASA la comprobación de salud.

Si el resultado no es PASSED, considera el disco en riesgo: realiza una copia de seguridad inmediatamente.

Ver capacidades SMART y tiempos de auto-test

sudo smartctl -c /dev/sda

Listado de capacidades SMART y tiempos estimados para auto-tests.

En este ejemplo la estimación era ~2 minutos para el test corto y ~95 minutos para el extendido. Estas estimaciones varían por modelo.

Ejecutar tests cortos y extensos

Test corto (rápido, detecta problemas obvios):

sudo smartctl -t short /dev/sda

Ejecución de un test corto en segundo plano.

El test corre en segundo plano; para ver los resultados de los últimos autodiagnósticos:

sudo smartctl -l selftest /dev/sda

Para ejecutar un test extendido, que es más exhaustivo:

sudo smartctl -t long /dev/sda

Si una prueba falla, prioriza la copia y migración de datos.

Opciones útiles y compatibilidad

  • Si tu unidad usa un tipo especial (por ejemplo, USB-SATA puenteado), smartctl puede requerir -d TYPE (ej. -d sat). Si tus comandos anteriores usaban -d, aplícalo también en smartd.
  • Para listar todos los atributos SMART:
sudo smartctl -A /dev/sda
  • Para ver el registro de errores:
sudo smartctl -l error /dev/sda

smartd: automatizar comprobaciones y alertas

smartd es el demonio que ejecuta comprobaciones periódicas y envía notificaciones cuando detecta problemas.

Archivo de configuración principal

Por lo general se encuentra en /etc/smartd.conf. Recomendación de flujo:

  1. Abrir /etc/smartd.conf
  2. Comentar la línea que contiene DEVICESCAN (añade # al inicio)
  3. Enumerar cada dispositivo explicitamente con opciones por línea

Ejemplo de línea por dispositivo (ajusta según tu sistema):

/dev/sda -a -o on -S on -s (S/../.././02|L/../../6/03) -m root -M exec /usr/share/smartmontools/smartd-runner

Explicación simplificada de las opciones:

  • /dev/sda: archivo de dispositivo
  • -a: habilita un conjunto de opciones comunes (monitoreo de atributos, pruebas automáticas, etc.)
  • -o on: habilita pruebas offline automáticas
  • -S on: activa el autosave de atributos SMART
  • -s (S/../.././02|L/../../6/03): programa tests; aquí S es diario a las 02:00 y L es semanal el sábado a las 03:00
  • -m root: envía correo a root (pueden ser varias direcciones separadas por comas)
  • -M exec /usr/share/smartmontools/smartd-runner: usa el script smartd-runner para acciones adicionales

Nota: Asegúrate de que el sistema pueda enviar correos (postfix, sendmail o equivalente) si vas a usar la opción -m.

Iniciar y probar smartd

Habilita el arranque automático editando /etc/default/smartmontools y poniendo:

start_smartd=yes

Inicia o reinicia el servicio:

sudo /etc/init.d/smartmontools start
sudo /etc/init.d/smartmontools restart

Para probar la notificación por correo, añade -M test a una línea de /etc/smartd.conf y reinicia smartd; smartd enviará una notificación de prueba.

Playbook rápido para administradores

Lista de acciones paso a paso para un servidor con discos locales:

  1. Verificar que hay copias de seguridad recientes antes de hacer pruebas largas.
  2. Instalar smartmontools.
  3. Comprobar compatibilidad con sudo smartctl -i /dev/sdX.
  4. Habilitar SMART si está disponible: sudo smartctl -s on /dev/sdX.
  5. Ejecutar sudo smartctl -t short /dev/sdX y revisar sudo smartctl -l selftest /dev/sdX.
  6. Configurar /etc/smartd.conf con líneas explicitas por dispositivo.
  7. Asegurar sistema de correo o webhook para alertas.
  8. Habilitar e iniciar smartd y comprobar logs en syslog/journal.
  9. Documentar la política de escalado (quién recibe alertas y qué hacer).

Rol basado en responsabilidades:

  • Admin de sistema: instalar, configurar smartd y probar mails.
  • Responsable de backups: validar restauraciones y puntos de recuperación.
  • Operaciones/NOC: configurar alertas y runbooks de respuesta.

Comprobación y aceptación de cambios

Criterios para considerar una configuración como operativa:

  • smartd arranca automáticamente al iniciar el sistema.
  • Se reciben notificaciones de prueba por correo o webhook.
  • Las pruebas cortas y extendidas pueden iniciarse y sus resultados son legibles.
  • Los logs muestran entradas de smartd y/o smartctl sin errores persistentes.

Limitaciones, cuándo SMART puede fallar

  • Algunos fallos mecánicos súbitos pueden no estar precedidos por cambios SMART detectables.
  • Discos en bridges USB o cajas RAID/encapsuladores pueden ocultar atributos SMART; en esos casos se necesita acceso en modo passtrough o usar herramientas del fabricante.
  • Un SMART correcto (PASSED) no garantiza vida indefinida; siempre mantén backups.

Contraejemplo: un disco que falla por un golpe eléctrico puede morir sin cambios previos en los contadores SMART.

Buenas prácticas y seguridad

  • Nunca confíes únicamente en notificaciones por correo: integra alertas con un sistema de monitorización (Prometheus/Alertmanager, Zabbix, etc.) o con webhooks.
  • Protege el acceso a /etc/smartd.conf y a los scripts que ejecuta smartd.
  • Si usas correos, evita exponer direcciones internas en logs exportados a terceros.

Plantillas y fragmentos útiles

Ejemplo mínimo de /etc/smartd.conf para dos discos:

# Monitorizar disco principal
/dev/sda -a -o on -S on -s (S/../.././02|L/../../6/03) -m root -M exec /usr/share/smartmontools/smartd-runner
# Monitorizar disco secundario
/dev/sdb -a -o on -S on -s (S/../.././02|L/../../6/03) -m [email protected] -M exec /usr/share/smartmontools/smartd-runner

Lista de comandos de verificación rápida:

sudo smartctl -i /dev/sda
sudo smartctl -H /dev/sda
sudo smartctl -A /dev/sda
sudo smartctl -l selftest /dev/sda
sudo tail -n 50 /var/log/syslog

Ejemplo de flujo de respuesta ante alerta

  1. Recibir alerta automática de smartd.
  2. Ejecutar sudo smartctl -A /dev/sdX y sudo smartctl -l selftest /dev/sdX.
  3. Validar copias de seguridad y planificar migración de datos.
  4. Si procede, desconectar el disco y reemplazar por mantenimiento proactivo.

Consideraciones locales y compatibilidad

  • En entornos con controladoras RAID, verifica si la controladora permite pasar atributos SMART a la OS. Si no, usa las utilidades del fabricante de la controladora.
  • En instalaciones con restricciones de red, las notificaciones por correo pueden fallar; usa syslog centralizado o API/webhook.

Resumen final

smartmontools es una herramienta valiosa para detectar problemas en discos duros antes de que fallen catastróficamente. Usa smartctl para inspecciones puntuales y smartd para monitorización continua. Sin embargo, recuerda que SMART ofrece señales tempranas en muchos, pero no todos, los fallos. Mantén buenas políticas de copia de seguridad y planes de respuesta para reducir riesgos.

Importante: Ante cualquier resultado no PASSED, prioriza la copia de seguridad y la sustitución del disco.

Autor
Edición

Materiales similares

Error cliente de correo predeterminado en Outlook — Solución
Soporte técnico

Error cliente de correo predeterminado en Outlook — Solución

AutoText en LibreOffice Writer: atajos y plantillas
Productividad

AutoText en LibreOffice Writer: atajos y plantillas

Etiquetas de envío: imprimir con AirPrint
Logística

Etiquetas de envío: imprimir con AirPrint

Mapas offline en Windows 10 — descargar y usar
Guía

Mapas offline en Windows 10 — descargar y usar

Evitar el sobrecalentamiento del portátil
Mantenimiento

Evitar el sobrecalentamiento del portátil

Cómo conseguir Dying Light Dockets
Videojuegos

Cómo conseguir Dying Light Dockets