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.