Extraindo o arquivo de imagem DDrescue após a passagem 1

1

Estou tentando recuperar dados de um disco rígido com defeito usando o ddrescue. Eu corri ddrescue por cerca de 4 dias, no final do qual completou a passagem 1. Às vezes, depois que começou com o passe 2, interrompi o processo para dar uma pausa no laptop e nos discos rígidos, pois eles estavam esquentando. Quando reiniciei o ddrescue, descobri que ele havia recomeçado no ponto que havia deixado anteriormente, mas com o passe 1 contando para cima novamente e não com o passe 2 (contagem regressiva). Além disso, o segundo passe foi dolorosamente lento, cobrindo apenas 5 Gb nos dois dias seguintes. O status atual mostra 0 erros e errsize como 0B e resgatado como 769755 MB, que é aproximadamente a quantidade de dados que eu lembro de estar na unidade. A minha pergunta é posso supor que o ddrescue já recuperou os dados que há para ser recuperado e que é seguro extrair o conteúdo do arquivo de imagem para outro drive USB? ou é necessário / obrigatório deixar o ddrescue executar os dois passes restantes também?

P.S Chkdsk falhou com o disco rígido USB com a mensagem "Ocorreu um erro não especificado". Eu estou esperando para extrair o arquivo de imagem para um novo disco rígido e executar o chkdsk novamente para ver se isso pode consertá-lo. Tentei montar o arquivo de imagem no linux, mas ele voltou com a assinatura NTFS.

    
por Venkatkk 12.05.2016 / 06:14

2 respostas

1

Você forneceu um arquivo de registro / mapa para ddrescue ? Por exemplo:

# ddrescue /dev/sdc file.img map.txt

Se você forneceu um arquivo de mapa, ddrescue deve continuar de onde parou. Isso significa que ele não tentará resgatar todos os dados que salvou originalmente e só tentará novamente os bits com os quais estava tendo problemas. No entanto, até onde sei, os passes são irrelevantes nas reinicializações. O arquivo de mapeamento é usado, então ddrescue pode saber quais dados ele já cobriu e onde teve problemas, e qual fase do algoritmo está executando atualmente. No entanto, os passes só contam quantas vezes ddrescue passaram pelo disco em uma fase, mas não parecem ser registradas no arquivo de mapeamento. Se você interrompê-lo no meio de "passar 2", então executá-lo novamente, ele estará efetivamente executando um novo "passe 3" que vai chamar de "passe 1", mas não vai refazer nada já coberto no passe 1 ou no passe parcial 2. Neste caso, espera-se que ele tenha uma taxa de transferência menor: tudo além do passe original 1 está tentando ler os pontos problemáticos. ddrescue trabalha primeiro tentando recuperar todos os bits facilmente legíveis da unidade o mais rápido possível, depois voltando e tentando novamente as partes que não puderam ler. Depois de reiniciá-lo, você deve descobrir que o valor "resgatado" é o mesmo de onde parou durante a execução anterior.

Se você não forneceu um arquivo de mapa, não é possível continuar de onde parou. Parar o ddrescue e iniciá-lo novamente é basicamente o mesmo que começar do zero, porque não é possível saber quais dados ele tem já cuidado ou não. Você deve sempre usar um arquivo de mapa quando estiver salvando dados de um disco com falha.

Em suma, ddrescue sairá quando tiver concluído a recuperação de 100% da unidade ou quando desistir de tentar recuperar dados. Você deve deixar ddrescue ser executado até a conclusão, a menos que esteja disposto a desistir de todos os dados restantes que ainda não foi capaz de ler. Você deve sempre permitir pelo menos um passe completo para completar, caso contrário, você estará perdendo dados perfeitamente bons (se você permitiu que o primeiro passe fosse concluído, então isso é coberto). A quantidade de dados recuperados é relativa ao tamanho total da unidade, não à quantidade de arquivos que estavam nela. Portanto, se recuperou 769755MB de uma unidade de 1000000MB, isso significa que ddrescue recuperou ~ 77% da unidade total de setores / blocos na unidade, mas não pode saber se 77% corresponde a blocos em uso ou se libera blocos. Se a unidade estava 77% cheia, na melhor das hipóteses, você recuperou 100% de suas estruturas de dados e sistemas de arquivos (se você obtiver sorte imprevisível). Na pior das hipóteses, você recuperou todos os 23% inúteis da unidade, que é espaço vazio, e 77-23 = 54% da unidade em dados. Se a unidade estava 77% cheia, isso é .54 / .77 = cerca de 70% dos seus dados. Em média, se a fração dos dados recuperados for aleatória, você terá cerca de 77% dos seus dados. Se você tiver azar, pode perder estruturas importantes do sistema de arquivos, fazendo com que o resto dos dados seja muito difícil de recuperar.

    
por 12.05.2016 / 10:11
0

ddrescue funciona em blocos que não estão em arquivos. Em uma unidade de 100 Gb em que você tinha 60 Gb de dados, você pode ter blocos recuperados na quantia de 60 Gb, mas isso significa apenas que 20 GB de seus dados foram recuperados. As chances de que os 60 Gb de blocos cubram exatamente os dados são pequenas.

Você deve IMO deixar executar ddrescue (e, nesse meio tempo, reconsiderar se a restauração do backup não é mais econômica, mesmo se você perder algumas horas de alterações de dados que ocorreram entre o backup e a falha)

    
por 12.05.2016 / 06:33