badblocks
badblocks es un programa para probar bloques malos en dispositivos de almacenamiento.
Uso
badblocks está en e2fsprogs
badblocks [ -svwnfBX ] [ -b block-size ] [ -c blocks_at_once ] [ -e max_bad_blocks ]
[ -d read_delay_factor ] [ -i input_file ] [ -o output_file ] [ -p num_passes ] [ -t test_pattern ]
device [ last-block ] [ first-block ]
Fidelidad de los dispositivos de almacenamiento
No existe ninguna regla definida. Lo común es pensar que los dispositivos de almacenamiento nuevos deben tener cero bloques malos.
Probar los sectores malos
Prueba lectura-escritura no destructiva
# badblocks -nsv /dev/<device>
Prueba lectura-escritura destructiva
# badblocks -wsv /dev/<device>
Trucos
El argumento -b permite indicar el tamaño del bloque, esto podría agilizar la velocidad con la que badblocks ejecuta lo solicitado, no obstante si se indica un tamaño de bloque mas grande esto va a generar que badblocks omita errores y no diagnostique bien los problemas. El tamaño por defecto es 1024.
Puede conocer el tamaño del bloque del disco con:
/sys/block/sdX/queue/physical_block_size
El argumento -c permite indicar la cantidad de blocks que se van a chequear a la vez. Esto permite también agilizar la velocidad con la badblocks se ejecuta, no obstante si se pone un valor muy bajo tendría el efecto contrario. El valor por defecto es 64.
El significado de la salida del comando significa errores de lectura/escritura/comparación. Es decir cuantos errores tuvo al leer el block, cuantos al escribir el block y cuantos al comparar los resultados.
Referencias