Saltar al contenido principal
hard-driveINFO

smartctl y los sectores defectuosos: lo que de verdad te dice, y el 23 % que se le escapa

smartctl informa de los sectores defectuosos, nunca los repara. Qué atributos SMART predicen realmente el fallo, cómo leerlos y por qué Backblaze encontró que el 23,3 % de los discos averiados no dio ningún aviso.

Por Eric Gerard · Editor · Save My Disk6 min de lecturaPhoto via Pexels

Busca este tema y Google te sugerirá "smartctl fix bad sectors". Esa sugerencia describe algo que la herramienta no hace, y la distancia entre lo que la gente espera y lo que SMART ofrece realmente es donde se pierden los datos.

smartctl informa, no repara

La documentación no deja margen de interpretación: smartctl "no calcula ninguno de los valores de los atributos, umbrales o tipos, se limita a informarlos a partir de los datos SMART del dispositivo".

Es una utilidad de monitorización e informe. No hay ninguna opción que repare un sector, porque reparar no es algo que haga una herramienta de diagnóstico. Cuando un disco reasigna un sector defectuoso, lo hace el firmware, en silencio, usando uno de repuesto de su reserva.

Esto importa en la práctica. Cualquier utilidad que anuncie que "arregla" sectores defectuosos está haciendo una de estas dos cosas: escribir sobre ellos, lo que destruye de forma permanente lo que hubiera dentro, o forzar la mano del firmware hacia la reasignación. Ninguna de las dos recupera tu archivo. Si los datos todavía importan, escribir en el disco es lo último que quieres hacer.

Los cinco atributos que vale la pena leer

Backblaze mantiene uno de los mayores conjuntos de datos publicados sobre fallos de discos, y vigila cinco atributos SMART para la predicción:

IDAtributo
5Reallocated Sectors Count
187Reported Uncorrectable Errors
188Command Timeout
197Current Pending Sector Count
198Uncorrectable Sector Count

Su comparación publicada: el 76,7 % de los discos averiados tenía al menos uno de estos por encima de cero, frente al 4,2 % de los discos operativos. Esa separación es lo que hace que merezca la pena comprobarlos.

Los dos que peor se interpretan son el 197 y el 5, y vale la pena entender la diferencia entre ambos.

197, Current Pending Sector Count, es la lista provisional. Son sectores que el disco tuvo problemas para leer y que ha puesto en periodo de prueba. Todavía no están condenados. Si una lectura posterior tiene éxito, el recuento puede volver a bajar.

5, Reallocated Sectors Count, es el registro permanente. Son sectores que el disco dio por perdidos y sustituyó por repuestos. Este número solo sube.

Así que un 197 distinto de cero es el aviso más temprano, y sobre el que conviene actuar, porque dice que el disco está teniendo dificultades ahora mismo para leer algo. Ese algo bien puede ser tu archivo.

Vista macro del interior de un disco duro abierto que muestra el plato reflectante y el brazo actuador con sus cabezales de lectura y escritura.
Vista macro del interior de un disco duro abierto que muestra el plato reflectante y el brazo actuador con sus cabezales de lectura y escritura.

Cómo leer la salida sin malinterpretarla

Tres comandos cubren el terreno práctico:

smartctl -H /dev/sda      # overall health status
smartctl -A /dev/sda      # the attribute table
smartctl -l selftest /dev/sda   # results of past self-tests

En -H, el significado documentado de un fallo es concreto y urgente: "o bien que el dispositivo ya ha fallado, o bien que está prediciendo su propio fallo dentro de las próximas 24 horas". Veinticuatro horas no son una ventana de mantenimiento. Significa copiar ahora lo que importa.

En -A, cada atributo lleva un valor Raw, un valor Normalized y un Threshold (umbral). La regla documentada es que, si el valor normalizado es menor o igual que el umbral, el atributo ha fallado. La gente lee de forma rutinaria la columna raw y entra en pánico, o la lee y se relaja, sin contrastarla con el umbral. El valor raw por sí solo no te dice si un atributo ha fallado.

Para lanzar las pruebas en sí:

smartctl -t short /dev/sda    # usually under ten minutes
smartctl -t long /dev/sda     # tens of minutes, more thorough

La prueba corta comprueba el rendimiento eléctrico y mecánico junto con el rendimiento de lectura. La prueba extendida es la versión más larga y minuciosa. En ambos casos el comando lanza la prueba y devuelve el control; el resultado lo lees después con -l selftest, que muestra el tipo y el estado final de cada una de las autopruebas más recientes.

La cifra que nadie cita: 23,3 %

Aquí está la parte que debería cambiar tu forma de actuar ante un informe limpio.

Según las propias cifras de Backblaze, si el 76,7 % de los discos averiados mostró un aviso, entonces el 23,3 % de los discos averiados no mostró ninguno. Casi uno de cada cuatro fallos llega sin que SMART informe de nada raro.

SMART es un aviso temprano útil que guarda silencio aproximadamente una cuarta parte de las veces. Es prueba de un problema cuando habla, y no es prueba de salud cuando calla. Una comprobación que pasa significa que aún no se ha detectado nada malo. No significa que el disco esté bien, y no sustituye a tener una segunda copia.

Qué hacer cuando los números son malos

El orden importa, y el primer paso es el que la gente se salta.

Deja de escribir en el disco. Cada escritura es una oportunidad de sobrescribir algo recuperable y más trabajo para un mecanismo que ya está sufriendo.

Crea una imagen antes de investigar. Trabaja sobre una copia a nivel de sector, no sobre el disco defectuoso. Los intentos de lectura repetidos en un disco con sectores pendientes ponen tensión justo donde ya está débil, y cada reintento es una oportunidad para que un sector marginal se vuelva ilegible. Cubrimos el proceso en clonar un disco dañado con ddrescue.

Después recupera desde la imagen. Una vez que tengas una copia, puedes reintentar tantas veces como quieras sin arriesgar el original.

Selección editorial
4.5 / 5

Recuperar desde una imagen o un disco todavía legible

Se aplica cuando el disco está lo bastante estable para leerlo o ya has hecho una copia. No repara sectores defectuosos, y ningún software puede hacerlo, porque la reasignación la gestiona el firmware del disco.

Fundada en 2004Garantía de 30 díasVersión gratuita 2 GB
Ver la oferta

La versión corta

smartctl te dice lo que el disco informa sobre sí mismo. Nunca repara nada, así que trata "fix bad sectors" como la descripción de otra cosa. Lee el atributo 197 como el aviso temprano y el 5 como el registro permanente, y compara los valores normalizados con los umbrales en lugar de leer las cifras raw por sí solas. Un -H fallido te da un horizonte documentado de 24 horas. Y un informe limpio no es un certificado de buena salud, porque aproximadamente uno de cada cuatro fallos nunca apareció en estas estadísticas.

El comportamiento de los comandos y la semántica de los atributos proceden de la documentación de smartctl; las cifras de correlación con el fallo (76,7 %, 4,2 %, 23,3 %) son estadísticas publicadas por Backblaze a partir de su propia flota. Las cifras describen su población de discos y no son una predicción para ningún disco individual. Los enlaces comerciales llevan el atributo rel="sponsored nofollow"; puede aplicarse una comisión de afiliación sin coste adicional para ti.

Selección editorial
4.5 / 5

Recupera los datos de tu disco duro → EaseUS

Escaneo gratis · archivos borrados, formateados, perdidos · Windows y Mac

Fundada en 2004Garantía de 30 díasVersión gratuita 2 GB
Ver la oferta

Preguntas frecuentes

¿Puede smartctl reparar los sectores defectuosos?

No. La documentación de smartctl es explícita: la herramienta no calcula ninguno de los valores de los atributos ni sus umbrales, se limita a informarlos a partir de los datos SMART del dispositivo. Es una utilidad de monitorización e informe. Nada en ella escribe sobre tus datos ni repara un sector. La reasignación la realiza el firmware del disco por su cuenta, no smartctl, y una herramienta que afirme reparar sectores defectuosos o bien los está reescribiendo, lo que destruye lo que hubiera allí, o bien describe mal lo que hace.

¿Qué atributos SMART importan realmente?

Backblaze vigila cinco para la predicción de fallos: SMART 5 Reallocated Sectors Count, 187 Reported Uncorrectable Errors, 188 Command Timeout, 197 Current Pending Sector Count y 198 Uncorrectable Sector Count. Sus cifras publicadas muestran que el 76,7 % de los discos averiados tenía al menos uno de estos por encima de cero, frente al 4,2 % de los discos operativos.

¿Qué significa un estado de salud fallido en smartctl -H?

La documentación indica que, si el dispositivo informa de un estado de salud fallido, significa o bien que el dispositivo ya ha fallado, o bien que está prediciendo su propio fallo dentro de las próximas 24 horas. Es una ventana estrecha. Es motivo para dejar de usar el disco de inmediato y copiar lo que importa, no para programar un mantenimiento para el fin de semana.

Mi disco pasa la prueba SMART. ¿Están seguros mis datos?

No necesariamente, y esta es la cifra que más importa. Backblaze informó de que el 23,3 % de los discos averiados no mostró ningún aviso en esas cinco estadísticas SMART. Casi uno de cada cuatro fallos llega con un informe limpio. Una comprobación SMART que pasa te dice que aún no se ha detectado nada malo, lo que no es lo mismo que el disco esté sano.

¿Cuál es la diferencia entre smartctl -t short y -t long?

La autoprueba corta suele durar menos de diez minutos y comprueba el rendimiento eléctrico y mecánico, así como el rendimiento de lectura del disco. La prueba extendida tarda decenas de minutos y es una versión más larga y minuciosa de lo mismo. Lee los resultados después con el registro de autopruebas en lugar de suponer que el comando que lanzó la prueba informó de su resultado.