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

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
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
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
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
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:
- Abrir /etc/smartd.conf
- Comentar la línea que contiene DEVICESCAN (añade # al inicio)
- 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:
- Verificar que hay copias de seguridad recientes antes de hacer pruebas largas.
- Instalar smartmontools.
- Comprobar compatibilidad con
sudo smartctl -i /dev/sdX
. - Habilitar SMART si está disponible:
sudo smartctl -s on /dev/sdX
. - Ejecutar
sudo smartctl -t short /dev/sdX
y revisarsudo smartctl -l selftest /dev/sdX
. - Configurar /etc/smartd.conf con líneas explicitas por dispositivo.
- Asegurar sistema de correo o webhook para alertas.
- Habilitar e iniciar smartd y comprobar logs en syslog/journal.
- 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
- Recibir alerta automática de smartd.
- Ejecutar
sudo smartctl -A /dev/sdX
ysudo smartctl -l selftest /dev/sdX
. - Validar copias de seguridad y planificar migración de datos.
- 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.
Materiales similares

Error cliente de correo predeterminado en Outlook — Solución

AutoText en LibreOffice Writer: atajos y plantillas

Etiquetas de envío: imprimir con AirPrint

Mapas offline en Windows 10 — descargar y usar

Evitar el sobrecalentamiento del portátil
