Reparar un disco duro usando Linux

A veces nos encontramos con un disco que hace «clac-clac» «clac-clac»… y pensamos: «Ha muerto, hay que cambiarlo». ¡¡Pues tiene arreglo.!!

Ese ruido lo hace simplemente porque está haciendo intentos de lectura sin parar, debido a que en un momento pasado se han escrito mal unos datos en el disco y ahora no puede leerlos. La solución es tan simple como volver a escribir en ese sector con datos aleatorios de una forma «especial». De esto se encarga la magnífica herramienta «badblocks», sencilla pero potente, Gnu/Linux es una caja de sorpresas.

Antes de poder empezar a hacer algo, el BIOS tiene que haber detectado el disco, es que hay veces que están tan estropeados que ni los detecta, estos tienen mal apaño, aunque seguiré investigando, a lo mejor resulta que se puede hacer algo.

Lo primero de todo debemos iniciar un sistema Gnu/Linux, sea una distribución Ubuntu o Fedora, desde LiveCD o desde disco duro, no importa, cualquier sistema Gnu/Linux vale.

Abrimos una ventana de terminal y ejecutamos «badblocks» indicando el disco duro dañado, por ejemplo /dev/sdb:

– sudo badblocks -s /dev/sdb

El parámetro -s sirve para que se muestre el porcentaje completado. Ya veis que mientras se pueden hacer otras cosas, como consultar el correo, mirar Internet, es muy cómodo. En un disco de 500 GB tarda aproximadamente una hora y media, en caso de haber sectores dañados se mostrará un resultado parecido a este:

25894612

25894614

25894620

25894810

Aquí vemos que entre el sector nº 25894612 y el 25894810 hay varios sectores dañados, así que en todo ese intervalo vamos a reparar los sectores, no importa que entre medias haya sectores buenos, no los va a estropear, aunque eso sí, se perderán los datos que contuvieran. Quien necesite todos los datos debe ir indicando uno a uno el sector a reparar, aunque así se tarda mucho más.

ATENCIÓN: El siguiente paso hará que se PIERDAN DATOS e incluso puede perderse la PARTICIÓN ENTERA. Se debe hacer COPIAS DE SEGURIDAD.

A continuación se ejecuta badblocks siguiendo este esquema:

– sudo badblocks -sw /dev/sdb sector_final sector_inicial

En nuestro ejemplo:

– sudo badblocks -sw /dev/sdb 25894810 25894612

La opción w es la que repara los sectores. Se encarga de escribir 4 veces los mismos sectores con diferentes patrones predefinidos. Es como si fuera un rotulador que marca poco y se escribe 4 veces para que marque bastante. Si quieres perder lo mínimo de datos, debes indicar los sectores uno a uno. Para ello debes indicar el mismo sector final y el inicial, así se repara un solo sector. Pero de esta forma se tarda mucho más.

En fin, ya veis que se pueden resucitar discos que hemos dado por muertos, pero eso sí, no los uséis para guardar datos importantes que no son fiables. Pero para guardar pelis o música si que sirven.

manuReparar un disco duro usando Linux

Comments 11

  1. Post
    Author
  2. Pingback: Quitar virus de Windows desde Ubuntu

  3. krloz

    Que tal amigo tengo un problema no se si sea el disco duro y quería repararlo el problema esta que cuando inicio windows se congela en logo ya no avanza sera problema del disco duro voy a probar instalando linux

  4. Post
    Author
  5. linuchero

    En linux mint me decia el flag que habia problemas en el disco duro *health problems* por lo que llegue a este blog, ahorita mismo esta haciendo el analisis de badblocks aver si logra arreglar el probelma ya que el disco duro es casi nuevo. Saludos y gracias por el tutorial.

  6. Ghermain

    Muchas gracias por el tutorial, ya lo estoy haciendo revisando mi disco duro de la portatil pues me alarme al escuchar en 2 oportunidades en diferentes días, un pitido y luego un clac cuando estaba trabajando y tambien al apagar (que lo hace en 10 segundos) me repite el pitido, luego el clac y se apaga. Veré como me va.

  7. Jose

    Mi problema es que no instala Linux, tal como comentas parece un fallo del disco duro. Reparo el disco duro con badblocks en el Live CD. Pero la instalación formatea la partición, se deshace la reparación de bloques dañados y sigue sin poder instalar. ¿hay alguna solución? Estoy tratando de instalar Ubuntu Mint 13 Maya ¿puede que tenga algo que ver que sea un disco duro sata? Gracias

  8. Post
    Author
  9. Pedro

    Hola mi disco duro tiene varios sectores dañados, con utilizar este metodo se repara todo y funciona bien?. Porque habia visto en otros lados que solo se aislaban dichos sectores y que el disco duro seguia en peligro.
    Gracias.

  10. Mauricio

    En resumen antes de aplicar dicho comando el disco duro a reparar se debe desmontar con umount o no? y que diferencia hay entre aplicar el comando Badblocks -sw /dev/sda1 en mi caso, o el comando Badblocks -s -n -v -f /dev/sda1

    Saludos a todos y gracias por su tiempo.

Deja un comentario