¿En qué se diferencia una exploración completa de superficie de lectura / escritura por 'bloques defectuosos' de la autocomprobación SMART Extended incorporada ?
Parece que ambos son escaneos de superficie completa, entonces ¿por qué lleva badblocks -vws
3 días probar una unidad de 1TB, mientras que SMART lo hace en 2 1/2 horas (al menos esa es la estimación de tiempo que me dio smartmon)?
hard-drive
bad-blocks
Robert S. Barnes
fuente
fuente
badblocks
parámetros "último bloque" "primer bloque" y realizar las pruebas un poco por día?Respuestas:
La prueba de superficie SMART es casi seguramente un pase de lectura único y ciertamente no destructivo. Como se ha señalado, también es interno de la unidad; con la posible excepción de datos de control menores, no se pasan datos hacia o desde el host durante la prueba.
Por otro lado,
badblocks -w
realiza cuatro pases sobre el disco, cada uno con una escritura y una lectura. Eso solo explica una diferencia de 8 veces en el tiempo necesario para la prueba, más la latencia rotacional. Dado que se trata de un software que se ejecuta en el host, todos los datos deben ser mezclados a través de la interfaz del disco a la RAM y manejados por el software (bloques defectuosos, en nuestro caso).Si tomamos una latencia rotacional en el peor de los casos de 1 × (el disco necesita hacer una revolución completa después de escribir los datos para volver a leerlos, que es más o menos lo que verá si le gustan los bloques defectuosos que primero llenan todo disco y luego leerlo todo, en lugar de hacer E / S una pista física a la vez que con LBA es casi imposible), terminamos con el peor de los casos (1 + 1) × 8 × = 16 × el tiempo necesario para Completa la operación. 16 × 2.5h = 40h, que ciertamente está en línea con sus números y aún asume que solo estamos tratando con el almacenamiento de datos en el disco y que está sucediendo tan rápido como el disco puede soportar E / S secuenciales.
fuente
Las pruebas SMART cortas y largas solo realizan lecturas (localizadas) de los sectores; Tampoco es destructivo para los datos. Los datos leídos solo se transfieren al controlador integrado, no a la PC host. La interfaz SATA está esencialmente inactiva durante la prueba, y la luz de actividad del HDD en la PC no debe encenderse.
badblocks -vws
solicita un sector de escritura y luego lee y verifica la operación. Cada escritura y lectura agrega una revolución de disco por operación más tiempo para transferencias de datos a través de la interfaz SATA más procesamiento de PC host. La luz de actividad del HDD debería estar encendida la mayor parte del tiempo.fuente
https://wiki.archlinux.org/index.php/badblocks#Comparisons_with_Other_Programs
Por lo tanto, use pruebas exhaustivas destructivas de badblocks cuando sea posible.
Editar: Por destructivo quise decir que muchos discos duros modernos tienen una carga de trabajo de 180TB / a, lo que significa que en un disco duro de 12TB, estaría tomando 96TB de carga de trabajo, si ejecuta el conjunto completo de pruebas de bloques defectuosos solo para probarlo. Eso podría ser 48 TB si por carga de trabajo solo se refieren a escrituras, lo que podría ser el caso, pero no está bien documentado.
fuente