Supongo que está hablando de bloques físicos defectuosos en un disco y no de sistemas de archivos dañados.
Para verificar la condición física de su disco, es mejor instalar smartmontools
sudo apt-get install smartmontools
Esto funciona porque todos los discos modernos registran su estado de salud utilizando un sistema llamado SMART
Use el smartctrl
comando para leer este estado. Por ejemplo, para leer todos los atributos de la primera llamada de disco
sudo smartctl --all /dev/sda
Tenga cuidado con una línea que habla sobre el estado general de salud. Una vez que esto indica un error, es muy probable que el disco falle pronto.
SMART overall-health self-assessment test result: PASSED
Otras líneas que desea verificar son el recuento de sectores pendientes y los sectores reasignados.
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always - 48
197 Current_Pending_Sector 0x0012 100 100 000 Old_age Always - 2
Las listas reasignadas generalmente en el campo sin procesar el número de sectores defectuosos que el disco intercambió por los que funcionan. Están pendientes los sectores que podrían reasignarse en caso de que falle la próxima escritura.
Incluso puede activar las autocomprobaciones del disco cuando sea compatible con su modelo
sudo smartctl -t long /dev/sda
Para forzar la comprobación de todos los sectores, utilice badblocks
en un modo en el que se escriben los datos. Tenga en cuenta que, aunque en general es seguro ejecutarlo, pondrá una carga adicional en sus discos, lo que podría provocar que fallen. Siempre tenga una copia de seguridad de sus datos.
sudo badblocks -svvn -c 262144 /dev/sda
Si ha procesado completamente su disco de esta manera, el controlador de disco debería haber reemplazado todos los bloques defectuosos por otros que funcionen y el recuento reasignado aumentará en el registro SMART.
-c
o el número de bloques que se prueban a la vez o, en otras palabras, por qué tiene un valor tan grande en comparación con el valor predeterminado de 64?