Guía de la utilidad smartctl en Smartmontools para Linux
Si estás usando un VPS o un servidor dedicado, la estabilidad del disco no es opcional — es crítica para la misión. Una sola unidad que falle puede provocar pérdida de datos, tiempo de inactividad y una recuperación costosa. Por eso los administradores de sistemas de Linux confían en smartctl — una potente herramienta de línea de comandos que te da acceso directo a los diagnósticos de la unidad mediante S.M.A.R.T.
Esta guía te muestra cómo usar smartctl en Linux, incluidos comandos prácticos, ejemplos reales y automatización inteligente.
¿Qué es smartctl?
smartctl forma parte del paquete Smartmontools. Permite acceder a S.M.A.R.T. (Self-Monitoring, Analysis and Reporting Technology), integrado en la mayoría de los HDD y SSD modernos.
Con smartctl, puedes:
- Comprobar el estado de salud de la unidad
- Ejecutar autopruebas cortas o extendidas
- Ver la temperatura y las métricas de rendimiento
- Detectar señales tempranas de fallo de hardware
El hardware compatible incluye:
- Unidades SATA / IDE / SCSI / NVMe
- Tanto SSD como HDD
- La mayoría de las distribuciones de servidor Linux y plataformas de hosting
¿Por qué usar smartctl?
| Ventaja | Beneficio |
|---|---|
| Detección temprana de fallos | Evita la pérdida de datos antes de que ocurra |
| Diagnóstico en tiempo real | Supervisa tus unidades sin reiniciar |
| Automatización sencilla | Funciona bien con cron, scripts y alertas |
| Visibilidad a nivel de hardware | Sin suposiciones — obtén datos sin procesar de la unidad |
| Amigable para DevOps & sysadmin | Ampliamente usado en datacenters y servidores cloud |
Cómo instalar Smartmontools
La instalación depende de tu distribución de Linux:
| OS | Comando de instalación |
|---|---|
| Ubuntu/Debian | sudo apt update && sudo apt install smartmontools |
| CentOS/RHEL | sudo yum install smartmontools |
| Fedora | sudo dnf install smartmontools |
| Arch Linux | sudo pacman -S smartmontools |
Una vez instalado, el comando smartctl está disponible a través del terminal.
Comandos esenciales de smartctl
| Comando | Qué hace |
|---|---|
| smartctl -i /dev/sda | Muestra información de la unidad |
| smartctl -H /dev/sda | Comprueba el estado general de salud |
| smartctl -A /dev/sda | Enumera atributos detallados de S.M.A.R.T. |
| smartctl -t short /dev/sda | Inicia una autoprueba corta (2-min) |
| smartctl -t long /dev/sda | Inicia una autoprueba completa extendida (10–60 min) |
| smartctl -l selftest /dev/sda | Muestra el historial de pruebas |
| smartctl -l error /dev/sda | Muestra los registros de errores |
📌 Sustituye /dev/sda por tu unidad real (por ejemplo, /dev/nvme0n1 para SSDs NVMe).
Ejemplo: Comprobar la salud de la unidad
sudo smartctl -H /dev/sda
Salida esperada:
SMART overall-health self-assessment test result: PASSED
Si el resultado es PASSED, tu unidad está actualmente en buen estado.
Si muestra FAILED — haz una copia de seguridad inmediatamente y planifica el reemplazo.
Atributos SMART clave a supervisar
| ID | Atributo | Significado |
|---|---|---|
| 5 | Reallocated Sector Count | Sectores defectuosos reasignados al espacio de reserva |
| 197 | Current Pending Sector Count | Sectores a la espera de una nueva lectura |
| 198 | Offline Uncorrectable Count | Sectores con errores de lectura/escritura |
| 194 | Temperature (Celsius) | Mantener por debajo de 50 °C para un rendimiento óptimo |
Un valor en aumento en estos campos = degradación de la unidad en progreso.
Horario de supervisión recomendado
| Tarea | Frecuencia |
|---|---|
| Comprobación de salud -H | Semanal |
| Prueba corta (-t short) | Semanal |
| Prueba larga (-t long) | Mensual |
| Revisión del registro de errores | Después de fallos o problemas de I/O |
| Supervisión de temperatura | Constante (mediante scripts) |
Automatizar con Cron
Ejemplo: un informe semanal por email sobre la salud del disco
0 3 * * 1 smartctl -H /dev/sda | mail -s "SMART Health Report" you@example.com
📌 Asegúrate de que mailutils o sendmail esté instalado.
Conclusión
smartctl es una herramienta ligera pero potente que ningún sysadmin debería pasar por alto.Con ella, puedes mantener tus servidores en buen estado, tus datos seguros y tu infraestructura proactiva.


