
Vou testar o 'xfs_repair' em alguns sistemas de arquivos grandes (cerca de 50 TB), pois no passado o uso de memória era alto. Embora eu pudesse testar o programa apenas em sistemas de arquivos corretos, seria bom testá-los em um sistema corrompido.
Então, qual seria a melhor maneira de corromper um sistema de arquivos. Crédito extra se o método apresentar repetidamente a mesma corrupção todas as vezes....
Para dar às pessoas uma ideia do que quero dizer em 2006 ish
"Para verificar ou executar o reparo com êxito em um sistema de arquivos de vários terabytes, você precisa:
- uma máquina de 64 bits
- um xfs _ reparar / xfs _ verificar binário de 64 bits
- ~2 GB de RAM por terabyte de sistema de arquivos
- 100-200 MB de RAM por milhão de inodes no sistema de arquivos.
xfs_repair normalmente usará menos memória do que isso, mas esses números fornecem uma estimativa aproximada do que um sistema de arquivos grande que está> 80% cheio pode exigir para reparar.
FWIW, da última vez que isso surgiu internamente, o sistema de arquivos de 29 TB em questão precisou de aproximadamente 75 GB de RAM + troca para ser reparado.”
Responder1
xfs_db tem uma opção blocktrash que
Lixeira de blocos de metadados do sistema de arquivos selecionados aleatoriamente. A lixeira ocorre em bits selecionados aleatoriamente nos blocos escolhidos. Este comando está disponível apenas em versões de depuração do xfs_db. É útil para testes
xfs_repair(8)
exfs_check(8)
.
Por exemplo
xfs_db -x -c blockget -c "blocktrash -s 512109 -n 1000" /dev/xfstest/testfs
Responder2
dd bloqueia para o dispositivo onde o sistema de arquivos reside. Você pode criar um script para que seja repetível. Apenas alguns blocos aleatórios em locais aleatórios e depois siga em frente.
Responder3
Você pode tentar sobrescrever os primeiros 512 bytes (MBR e tabela de partição) do dispositivo de bloco.
Faça backup primeiro:
dd if=/dev/device bs=512 count=1 of=backup.bin
E zere depois:
dd if=/dev/zero bs=512 count=1 of=/dev/device
Sua máquina não deve inicializar depois disso, você pode testar o reparo do XFS usando o live CD.