Linux: Cómo reparar sectores defectuosos

Linux: Cómo reparar sectores defectuosos

Para comenzar, lo primero e importante, es estar seguro de que tipo de fallo tiene nuestro disco, como ya he dicho antes, si el sonido del disco es normal, no se escucha ningún "clac", al intentar leer o escribir, lo más probable es que si que podamos repararlo. Para ello primero de todo debemos asegurarnos donde está montado, y que lo haya reconocido el sistema. Para comprobar el disco que queremos y saber la partición, podemos abrir una ventana de terminal y ejecutar el comando:

principal

 lsblk -f

Nos aparecerá algo parecido a la captura, cada uno tendrá una estructura de discos y particiones, como explico a continuación.

cap1

Con este comando nos muestra los árboles de particiones y discos, como vemos, las particiones cuelgan de la raíz /dev/sdb, numerándolas, es decir, sdb1, sdb2, etc. Para reparar el disco tenemos que seleccionar la partición raíz, es decir, sdb. Por lo tanto para reparar el disco duro vamos a introducir el comando siguiente en modo root.

 badblocks

Este comando por si sólo no hace nada, es la herramienta que utilizaremos para hacer la reparación, para ello si queremos ver la información de los parámetros que podemos pararle para hacer la reparación, vamos a la consola, e introducimos :

 man badblocks

Se nos abrirá algo parecido a un manual de instrucciones con la descripción de lo que hace cada parámetro, y todo lo que podemos hacer con ella. Yo aquí voy a describir los parámetros más significativos y que normalmente se utilizan.

Para hacer sólo un escaneo del disco, y que compruebe los sectores defectuosos, en caso de que los tenga, escribimos:

 badblocks -s /dev/sdb

Si por el contrario, estamos seguros que nuestro disco tiene estropeados varios sectores y no queremos perder la información que está contenida en los mismos, debemos añadir el parámetro -n, esto efectúa una lectura-escritura no destructiva:

 badblocks -n /dev/sdb

También es importante saber que los parámetros se pueden combinar entre ellos, siempre que sean compatibles, cuando escribimos el primer comando mencionado, en la descripción aparece que parámetros son compatibles entre si, por ello es impotente echarle un ojo, aquí se explica de forma superflua, sin entrar mucho en detalle.

El comando más utilizado es una combinación de varios parámetros, ya que algunos de por si solos no funcionan, o no sirven de nada. El conjunto de parámetros más usado es el siguiente:

 badblocks -svnf /dev/sdb

Básicamente contiene los dos comandos anteriormente mencionados, y también añadimos -v, que sirve para que nos valla mostrando por pantalla el número del sector defectuosos. Además también hemos añadido la opción de -f, que repara los sectores dañados. Un ejemplo de lo que os mostrará, es algo parecido a lo siguiente, para que os hagáis una idea.

 linux-f7zo:~ # badblocks -svnf /dev/sdc /dev/sdc is apparently in use by the system; badblocks forced anyway. Checking for bad blocks in non-destructive read-write mode From block 0 to 976762583 Checking for bad blocks (non-destructive read-write test) Testing with random pattern: 317676% done, 13:14 elapsed. (0/0/0 errors) 317677% done, 16:20 elapsed. (1/0/0 errors) 317678% done, 19:26 elapsed. (2/0/0 errors) 317679% done, 22:32 elapsed. (3/0/0 errors)

Por último, si nos da igual la información contenida en el disco, y lo único que nos interesa es repararlo, podemos utilizar el parámetro -w, que a grandes rasgos lo que hace es rellenar el sector, de forma que lo que hay escrito se pierde. Este parámetro no es compatible con -n ya que se contrarían entre si. El tiempo que tarda en reparar sectores, es directamente proporcional al tamaño del disco, no es lo mismo reparar un disco duro de 20 GB que un disco duro de 4TB. Si tienes un disco duro que reparar en Mac también puede reparar el disco con sus propias herramientas. Para evitar dolores de cabeza es recomendable, tener siempre una copia de seguridad, de esta forma nos dolerá menos si perdemos un disco.

Para ti
Queremos saber tu opinión. ¡Comenta!