Voy a probar 'xfs_repair' en algunos sistemas de archivos grandes (alrededor de 50 TB) ya que en el pasado el uso de memoria era alto. Si bien pude probar el programa solo en sistemas de archivos correctos, sería bueno probarlos en un sistema corrupto.
Entonces, ¿cuál sería la mejor manera de corromper un sistema de archivos? Crédito adicional si el método da repetidamente la misma corrupción cada vez ...
Darle a la gente una idea de lo que quiero decir en 2006 ish
"Para verificar o ejecutar con éxito la reparación en un sistema de archivos de varios terabytes, necesita:
- una máquina de 64 bits
- a 64 bits xfs _ reparar / xfs _ verificar binario
- ~ 2 GB de RAM por terabyte de sistema de archivos
- 100-200 MB de RAM por millón de inodos en el sistema de archivos.
xfs_repair usualmente usará menos memoria que esto, pero estos números le dan una cifra aproximada de lo que un sistema de archivos grande que está> 80% lleno puede requerir reparación.
FWIW, la última vez que esto surgió internamente, el sistema de archivos de 29TB en cuestión requirió ~ 75GB de RAM + intercambio para reparar ".
fuente
Respuestas:
xfs_db tiene una opción blocktrash que
Por ejemplo
xfs_db -x -c blockget -c "blocktrash -s 512109 -n 1000" /dev/xfstest/testfs
fuente
dd bloquea el dispositivo donde reside el sistema de archivos. Puede escribir esto para que sea repetible. Solo unos pocos bloques al azar en ubicaciones aleatorias, luego continúe.
fuente
Puede intentar sobrescribir los primeros 512 bytes (MBR y tabla de particiones) del dispositivo de bloque.
Haz una copia de seguridad primero:
Y cero a continuación:
Su máquina no debería arrancar después de eso, puede probar la reparación de XFS utilizando un CD en vivo.
fuente