Galerias
Encuesta
Mantenimiento de sistemas de ficheros
En este tutorial encontrara la información para realizar mantenimiento a sistemas de ficheros ext2, ext3 y ext4. Ademas de marcar (para que no sean utilizados) esos molestos sectores defectuosos que ponen en riesgo la integridad de los datos.
Es muy importante darle mantenimiento periodico a los sistemas de ficheros ( FS ),
para prevenir perdidas de información.
Las herramientas que utilizaremos en este tutorial son:
-badblocks
-mke2fs
-e2fsck
Antes de iniciar con la parte técnica es importante entender lo siguiente:
Sector físico: Imaginemos un sector físico como un cuadrito de una hoja de papel cuadriculado. Normalmente un sector físico tiene un tamaño de 512 bytes.
Sector lógico: Es un grupo de sectores físicos, también conocido como bloques o cluster. Con un lápiz podríamos crear un bloque de 2 cuadritos en nuestra hoja, ese bloque seria de 1024 bytes que es igual a 1Kbytes.
badblocks: Como su nombre lo indica, sirve para listar sectores lógicos defectuosos (bloques)
si no se especifica el tamaño de bloque ( opcion -b ) generara bloques de 1k.
mke2fs: Crea FS del tipo; ext2, ext3, ext4.
e2fsck: Es el que repara los FS ext[2, 3, 4].
Ahora planteo unos casos para ilustrar el tutorial:
CASO 1
Si tenemos un disco duro de años, es posibles que tenga sectores defectuosos, asi que es recomendable marcar los sectores defectuosos para que el FS no los utilice. podemos crear particiones con fdisk. Supongamos que creamos una sola particion llamada hdb1. ( En alguna partición de hda esta nuestro SO, que resulta idenfirente ).
Crear FS y marcar sectores lógicos malos:
#mke2fs -t ext4 -c /dev/hdb1
-La opción " -t " es para decir que sistema de fichero usaremos, podría ser ext2 o ext3.
-mke2fs crea bloques de 4k si no se le dice lo contrario. ( opción " -b " )
-La opción " -c " es para marcar bloques malos usando badblocks.
-Listo tenemos una partición con ext4 y con los bloques malos marcados ( no se usaran ).
CASO 2
A pasado el tiempo y nuestra partición del ejemplo anterior necesita mantenimiento:
#e2fsck -p -c -k /dev/hdb1
-La opción " -p ", intentara repara automáticamente ( si no me equivo es la opción que se usa al inicio en mantenimiento programado )
- Opción " -c " en combinación con la opción " -k ", agrega nuevos bloques defectuosos a la lista ( y asi no se escanea nuevamente los ya dañados )
*Si no se formateo con la opción " -c " ( ver caso 1 ) simplemente: ( sin " -k " ya que no hay una lista previa de bloques malos )
#e2fsck -c /dev/hdb1.
CASO 3
Supongamos que hdb1 sera formateado constantemente por alguna razon. Para no estar analizando los sectores defectuosos cada vez que se desee formatear, se puede crear una lista de sectores defectuosos:
#badblocks /dev/hdb1 -o bloques_dañados
Marcar al formatear usando la lista generada por badblocks:
#mke2fs -t ext4 -l bloques_dañados /dev/hdb1
y si no se marca al formatear también se puede después de formatear:
#e2fsck -l bloques_dañados /dev/hdab1.
Notas Importantes:
1)elegí hdb1 para mostrar que por seguridad, no debe de estar montada la partición a la que le daremos mantenimiento.
2) En general le podemos dar mantenimiento a cualquier partición siempre y cuando no este montada.
3)En el caso 3 es muy importante que el tamaño de bloque que genera badblocks coincida con el tamaño de bloque generado por mke2fs y e2fsck. Es decir que si planea usar o usa un sistema de ficheros con tamaño de bloque de 2k
tendría que especificarlo en el comando badblocks: #badblocks -b 2048 /dev/hdb1 -o bloques_dañados
De no ser asi se cometera un error lógico.
4) K = 1000, entonces 2K = 2000?
si pero en este caso hay que recordar que un sector fisico es igual 512 bytes,
2K es igual a 4 sectors físicos. O sea que cada bloque tendra 4 sectores fisicos.
5) Agregar opción -v en los comandos anteriores para que muestren mas información.

Your post helped to solve my
Your post helped to solve my problem at last! Thank you, I had to finish my task for the online assignments and my system let me down again.
Duda...
Tengo que hacerlo ejecutando un LiveCD o lo puedo hacer desde el OS que esta en el mismo disco dañado?
Basicamente lo importante es
Basicamente lo importante es que la particion este desmontada, asi que si se le quiere dar mantenimiento a la particion en la cual esta el SO es necesario usar otro medio por ejemplo un livecd.
Digamos que se tienen dos particiones, una en la que esta instalado el SO y otra en la que se tienen datos; se podria demostar la particion de datos ( #umount /dev/particion_de_datos ) y luego hacer lo que dice el tuto.
Muy Bueno,
Al ejecutar el Ubuntu 9-10 en mi laptop dice que el disco tiene errores, Ubuntu 9-04 no los detecta pero el chequeo de disco desde el Bios si lo hace, ¿Solucionaria mi problema con este tuto? Reduciendo el tamaño de mi disco (marcando los sectores malos).
Si funciona.
Hola, hace poco mi disco duro me dio muchos problemas. marque los sectores defectuosos y lo pude rescartar, el daño de mi disco fue tan grave que despues de marcar los sectores defectuosos se redujo en aproximadamente 5 Gb quedando 70 Gb ( o sea millones de sectores dañados ).
Por otra parte he logrado revivir muchos discos duros con este metodo.