Como apagar um disco rígido com setores não graváveis?

18

Então eu tenho um disco rígido que está falhando. Eu quero apagar os dados nele antes de enviá-lo para substituição. Estou tentando usar dd if=/dev/zero of=/dev/sdXX , mas ele pára no primeiro erro de gravação. Como posso substituir a unidade por zeros, ignorando erros de gravação? conv=noerror parece afetar apenas o arquivo de entrada.

    
por TestUser16418 15.12.2010 / 13:04

5 respostas

17

tente o ddrescue em vez do dd - tenta mais com erros

    
por 15.12.2010 / 17:59
12

Parâmetros usados com o ddrescue para apagar a unidade /dev/sdb (preenchida com zeros de /dev/zero ) e registrar a saída no arquivo log.txt :

ddrescue --force /dev/zero /dev/sdb log.txt
    
por 13.03.2012 / 20:24
3

Se você quiser apenas limpar o disco, tente dban

Do site:

O Darik's Boot e Nuke ("DBAN") é um disco de inicialização independente que limpa com segurança os discos rígidos da maioria dos computadores. O DBAN excluirá automática e completamente o conteúdo de qualquer disco rígido que ele possa detectar, o que o torna um utilitário adequado para a destruição de dados em massa ou de emergência.

    
por 15.12.2010 / 18:16
1

Para o registro, o dd também tem uma opção conv=noerror para ignorar os erros. Se você tivesse erros em um arquivo de entrada (quando não estiver usando /dev/zero , você usaria conv=noerror,notrunc ou conv=noerror,sync para evitar que o dd trunque o arquivo de saída onde existem erros no arquivo de entrada. Para sua consulta, você pode tentar este comando:

dd if=/dev/zero of=/dev/sdXX conv=noerror  

Para acelerar o processo e potencialmente evitar que a unidade morra no meio do passo, você também pode tentar aumentar o tamanho do byte a partir do padrão 512 (o que faz o dd ler setor por setor, que é lento) para algo maior como como 4K (que é oito vezes maior):

dd if=/dev/zero of=/dev/sdXX bs=4K conv=noerror  

Observação: com um tamanho de byte maior, os erros ignorados podem deixar seções de dados legíveis um pouco menores que o tamanho do byte escolhido, mas ainda é improvável que alguém consiga obter algo dessas seções depois que o disco inteiro tiver sido percorrer o processo.

Além disso, tenho certeza de que os fabricantes de discos rígidos descartam adequadamente os discos rígidos que são devolvidos para substituição da garantia, caso a unidade falhe antes que você possa concluir totalmente o processo de sobregravação.

    
por 28.01.2011 / 12:29
0

Definitivamente, não é uma solução de usuário avançado, mas se os erros de gravação forem raros, talvez você queira continuar manualmente após a ocorrência deles.

Você poderia, teoricamente, criar scripts para fazer isso automaticamente, mas não é tão trivial, e eu prefiro escrever uma ferramenta para fazer o truque do que me preocupar com o script dd.

   seek=BLOCKS
          skip BLOCKS obs-sized blocks at start of output
    
por 15.12.2010 / 14:37