badblocks es una utilidad disponible para Linux que permite localizar y aislar los sectores defectuosos de una unidad de disco. Este programa genera una lista de los sectores dañados en el disco que puede ser leída por otros programas, como mkfs, a fin de evitar su uso y prevenir así problemas de corrupción y pérdida de datos. Es parte del proyecto e2fsprogs,[1]​ y está disponible una versión portada a sistemas BSD.[2]

Ejecutado como programa independiente, badblocks devuelve una lista de bloques defectuosos, si los hubiera. Para visualizar la lista de los bloques corruptos generada por e2fsck o tune2fs, bastaría con ejecutar la orden: dumpe2fs -b.

Se trata de una buena opción a la hora de chequear problemas en un disco duro, con independencia de otras tecnologías de control de errores como SMART o las incluidas en el propio sistema de archivos.[3]

Opciones editar

La forma más común de uso es hacer la llamada a badblocks como parte de e2fsck, con la opción "-c" para identificar los sectores dañados y prevenir que se almacenen datos en ellos. Esto se consigue añadiendo la lista de los sectores dañados al nodo índice de dichos sectores, previniendo que puedan ser asignados a un archivo o directorio. Puede hacerse la prueba aplicando un método de solo-lectura ("-c") o bien de lectura-escritura no-destructiva "-cc").[4]

Opción "-c" editar

La opción "-c" de badblocks permite a los usuarios configurar el número de bloques que se van a examinar en cada momento. Por lo general, el uso de esta opción no suele afectar a la velocidad de escaneado.[5]

Ejemplos editar

 badblocks -nvs /dev/sdb

La orden anterior comprueba el disco "sdb" en modo lectura-escritura no-destructiva, y muestra el progreso a medida que se escriben los números de bloques chequeados.

 badblocks -wvs /dev/sdb6

Lo anterior comprueba la sexta partición del dispositivo "sdb", en modo lectura-escritura destructiva, y muestra el progreso al escribir y examinar los bloques. Todos los datos serán sobrescritos, bloque por bloque. Si se aplica al disco entero, como en el ejemplo anterior, destruirá el registro MBR, las particiones creadas y los datos almacenados en la unidad.

 badblocks -wvsb 4096 /dev/sdb

Esto escribe 4 patrones diferentes en todo el disco "/dev/sdb", y lo verifica leyéndolo de nuevo. Es probable que los discos actuales no muestren ningún sector defectuoso, ya que por sí mismos se ocupan de descartar los sectores dañados.[6]​ No obstante, ejecutar el programa sobre una unidad nueva durante unos días permite una revisión completa de la superficie del disco, y junto con los datos S.M.A.R.T., sirve para determinar qué sectores han sido reasignados.

Debe notarse que la opción -w conlleva el borrado completo de la unidad, por lo que debe evitarse su uso en toda unidad que contenga información útil para el usuario.

Véase también editar

Referencias editar

  1. E2fsprogs: Ext2/3/4 Filesystem Utilities – Release notes
  2. FreshPorts – sysutils/e2fsprogs
  3. badblocks(8) – Comandos de mantenimiento en el Manual de Debian
  4. e2fsck(8) – Comandos de mantenimiento en el Manual de Debian
  5. Ts'o, Theodore. «Re: Bug#232240: e2fsprogs: -c <number of blocks>should perhaps default to a higher number». Debian bug tracking system. Consultado el 11 de diciembre de 2011. 
  6. «Bad Sector Remapping» (en inglés). Archivado desde el original el 19 de julio de 2012. Consultado el 29 de agosto de 2013. 

Enlaces externos editar