martes, 5 de julio de 2011

Reparar un disco duro o una memoria usb en Ubuntu-Linux

votar
Siguiendo donde lo dejé en el artículo anterior, Comprobar un disco duro en Ubuntu, ahora le tocaba a la reparación del disco duro, tal y como sugirió Senpai.
Ahora bien, quiero aclarar que lo que vamos a hacer es marcar los bloques defectuosos como utilizados, y formatear el resto de la unidad, perdiendo capacidad, evidentemente. Quiero decir, que no se trata de la panacea, ni la solución universal, se trata de un proceso para intentar salvar lo que se pueda, y dependiendo del porcentaje de sectores defectuosos, a lo mejor, vale la pena replantearse el asunto y desprenderse de esa memoria usb o de ese dusco duro (siempre puedes hacer un pequeño museo de los horrores, aunque a lo mejor se llamaría de los errores).
Llegados a este punto, indicar que el proceso es largo, dependiendo del tamaño del disco duro o de la memoria USB, así que vale la pena que planifiques cuando vas a hacer el trabajo.
Para este artículo, he utilizado un disco duro externo conectado por USB con formato ext4 de 160 Gb y una memoria USB de 1 GB con formato fat32. Cuando estaba redactando este artículo, la situación del disco duro de 160 GB era la siguiente:
0006_atareao@zorita: -home-atareao
El proceso se llevó unas cuantas horas, no puedo asegurar cuantas fueran, porque lo dejé por la noche en marcha y al retomarlo por la mañana la situación era la siguiente:
0007_atareao@zorita: -home-atareao
Vamos de los 156.290.903 bloques 155.707.224 estaban dañados, vamos que el disco duro está completamente destrozado. No se como funciona.
Es por esta razón por la que retomé el artículo con la memoria USB, con la esperanza de que no estuviera en tan lamentable estado. Y menos mal que no fué así, en este caso la situación fue la siguiente:
0023_atareao@zorita: -home-atareao
En este caso, la situación no es tan dramática estamos en 13.703 bloques de un total de 1.007.615, algo mas de 1%.
El siguiente paso es formatear la unidad pasando como argumento el listado de bloques dañados:
0020_atareao@zorita: -home-atareao
Dada mi naturaleza desconfiada, una vez realizada formateado, he vuelto a buscar los bloques dañados, para comprobar que el resultado es el mismo:
0021_atareao@zorita: -home-atareao
Efectivamente el número de bloques dañados es el mismo, pero por he querido además utilizar Meld, para comprobar que los bloques eran los mismos (desconfiado que es uno):
0024_badblocks_1GB01.txt : badblocks_1GB02.txt - Meld
Por último, podemos ver queda nuestra memoria USB en GParted:
0022_ROOT: -dev-sdh - GParted
Donde aparecen usados 15.75 MB, que corresponden mas o menos con los bloques dañados. Si no le hubieramos pasado los bloques dañados al realizar el formateo, el resultado hubiera sido este:
0019_ROOT: -dev-sdh - GParted
Donde solo aparecen como usados 1.94 MB. Puedes ver un resumen de los pasos a seguir a continuación…

Indicaciones

Buscando bloques defectuosos

Lo primero es localizar los bloques dañados de cada una de las particiones. Con la siguiente opción hacemos una búsqueda utilizando el modo de lectura y escritura no destructivo (opción -n), mostrando el progreso (-s) y los bloques dañados los vuelca en “badblocks_1GB01.txt”
1
sudo badblocks -n -s -v /dev/sdh1 -o badblocks_1GB01.txt
Si quisieramos hacer una comprobación de solo lectura las opciones a utilizar serían:
1
sudo badblocks -s -v /dev/sdh1 -o badblocks_1GB01.txt
y para hacer una de lectura y escritura, pero donde se borra toda la infomación de tu partición, las opciones serían:
1
sudo badblocks -w -s -v /dev/sdh1 -o badblocks_1GB01.txt

Formatear la unidad

Tienes que pasar el listado de bloques obtenidos en el paso anterior, para ello el comando a emplear para formatear en FAT32 es:
1
sudo mkdosfs -F32 -v -n "1GB" -l badblocks_1GB02.txt /dev/sdh1

Más información | RevistaLinux.net, introWiki
Más información | Ubuntu – badblocks, Ubuntu – mkfs

Fuente:http://www.atareao.es/ubuntu/conociendo-ubuntu/reparar-un-disco-duro-o-una-memoria-usb-en-ubuntu/

No hay comentarios:

Publicar un comentario