Eu preciso clonar um disco de 2 TB com falha que contém uma partição NTFS, usando Debian GNU/Linux. O disco tem vários setores defeituosos não realocáveis, então eu sei que parte dos dados já está perdido; porém preciso clonar o disco para tentar recuperar o resto usando testdisk
.
O comando que emiti para cloná-lo é:
dd if=/dev/sdc of=/dev/md2 bs=512 conv=noerror status=progress
e levou cerca de 2 dias para ser concluído, durante os quais encontrou setores defeituosos em cerca de 3 GB, 66 GB e 88 GB. O disco com falha é bastante antigo e não é o formato avançado, então eu sei que seus setores são de 512 bytes cada, com certeza.
O problema é que tentar testdisk /dev/sdc
lê o diretório (mas não consegue recuperar os arquivos, por causa de setores defeituosos), enquanto o tryng testdisk /dev/md2
nem lista o conteúdo do diretório. O disco contém apenas a partição NTFS, que abrange todo o espaço disponível. Por que o clone não é igual ao original, pelo menos nos setores que não estão danificados? Estou clonando de uma maneira ruim e devo cloná-lo de outra maneira, por exemplo, comando ou opções diferentes?
Graças à sugestão de Michael Hampton , encontrei
myrescue
, semelhante add_rescue
, mas mais bem documentado (pelo menos essa foi a minha impressão).Com
myrescue
eu primeiro clonei o disco lendo-o na ordem inversa (do último setor para o primeiro), depois lendo os setores ausentes novamente na ordem normal. Tudo feito desativando todas as leituras antecipadas e cache. Assim que tentei, ficou claro que levaria mais de 50 dias para ser concluído, então escrevi um script para reiniciar automaticamentemyrescue
de onde parou, após prováveis apagões na linha de energia em um período de tempo tão longo.Ele recuperou tudo o que eu precisava, mas esteja avisado: YMMV e um disco com falha não é brincadeira para seus dados, então leia a
myrescue
documentação e pense duas vezes antes de fazer qualquer coisa em seu disco, executando meu script incluído.Se você não tiver outra escolha (ou nenhuma outra escolha melhor) do que executar myrescue, aqui está o script que escrevi, caso alguém esteja interessado: