Usando o ddrescue para recuperar dados de um disco ntfs com falha

3

Eu estou tentando salvar alguns dados do usuário de um disco que falhou em um computador com Windows 8. Eu removi o disco rígido que não pôde ser lido pelo laptop do Windows 8, conectado à minha máquina OS X, que pode ver as partições, mas não pode montá-las. (ntfs-3g também não pode).

diskutil list mostra:

/dev/disk8 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *1.0 TB     disk8
   1:                        EFI ESP                     524.3 MB   disk8s1
   2: 786BA1D3-6BAF-4D9G-B621-461EB71A4965               41.9 MB    disk8s2
   3:         Microsoft Reserved                         134.2 MB   disk8s3
   4:           Windows Recovery                         513.8 MB   disk8s4
   5:       Microsoft Basic Data                         985.0 GB   disk8s5
   6:           Windows Recovery                         471.9 MB   disk8s6
   7:           Windows Recovery                         367.0 MB   disk8s7
   8:           Windows Recovery                         13.2 GB    disk8s8

Estou usando ddrescue para tentar recuperar o conteúdo do disco rígido ... por isso estou usando o comando:

sudo ddrescue -n /dev/rdisk8s5 ./backup.dmg mapfile

com base no pressuposto de que os dados reais do usuário estão na partição # 5 ...

Até agora, depois de alguns dias, a saída atual de ddrescue é semelhante a:

GNU ddrescue 1.20
Press Ctrl-C to interrupt
Initial status (read from mapfile)
rescued:   126523 MB,  errsize:       0 B,  errors:       0

Current status
rescued:   261066 MB,   errsize:         0 B,    current rate:  19202 kB/s
   ipos:   456274 MB,    errors:         0,      average rate:   1568 kB/s
   opos:   456274 MB,  run time: 23h 49m 38s,  remaining time:         n/a
time since last successful read:          0s

O tempo de execução será desativado, pois eu tenho ctrl-c algumas vezes, uma vez para tentar file no .dmg para ver se ele poderia determinar qualquer coisa (não).

Pelo que eu posso dizer, está aumentando o dmg para o tamanho relativo de ipos e opos , mas pelo que eu entendi, o tamanho real dos dados recuperados é a rescued .

Uma coisa que eu noto é que enquanto a taxa média é 1568kB/s , ela parece ler a cada 1min-2min por cerca de 5-10s.

A partir das informações acima, estou atualmente esperando que ele termine este passo (estimando, com base no tamanho do dmg (tamanho ipos / opos), deve ser um total de ~ 100 horas, mas não tenho certeza se devo dobrar isso devido ao tamanho de rescued sendo metade disso (preciso do dobro do espaço em disco para salvar?)

Qualquer pessoa com experiência em recuperação de disco, eu tenho as seguintes perguntas -

  1. como está isso? Não vejo erros, mas o disco não pode ser lido por seu próprio PC, e o mac não pode montá-lo, portanto sou pessimista quanto à recuperação de dados.

  2. uma vez que eu "terminei" ... o que será necessário fazer para acessar os dados que estão sendo salvos no .dmg - A criptografia do Windows 8 será algo que eu conheço?

  3. eu preciso de 2x o espaço em disco para o DMG que está sendo salvo? Já o tamanho resgatado é metade do dmg e ipos / opos. ou é a unidade em tal estado terrível que está apenas recuperando metade de tudo.

Eu não acho que o espaço em disco usado esteja em qualquer lugar perto de 1 TB de dados do usuário ...

Qualquer outra sugestão seria muito apreciada.

    
por uglycat 28.08.2016 / 19:59

1 resposta

4

Disclaimer: I am the developer of RecuperaBit. This answer is a summary of this answer of mine, mixed with feedback by OP.

Seu comando ddrescue está clonando apenas a quinta partição ( /dev/rdisk8s5 ), o que é bom se você tiver certeza de que a tabela de partição está correta. No entanto, se você tiver espaço suficiente, sugiro que você clone o disco inteiro.

once to try file on the .dmg

Lembre-se de que ddrescue faz cópias brutas de unidades de fluxo de bits. Esse arquivo não é um arquivo DMG, não importa como você o chama. Normalmente, você usaria a extensão .img ou, às vezes, .dd .

the disk cannot be read by it's own PC, and the mac cannot mount it either so I am pessimistic about recovering data

Você não receberá uma partição de trabalho, com certeza. Mas é possível recuperar as partes dos dados que não foram danificadas, mesmo se as estruturas do NTFS estiverem parcialmente danificadas.

Se a unidade estiver apenas levemente arruinada, você pode tentar testdisk , mas o fato de file não detectar uma assinatura NTFS sugere que a situação é pior.

what will be needed to be done to access the data being saved

Você pode usar o RecuperaBit , que é um software de código aberto para a reconstrução NTFS forense. O algoritmo que ele usa executa uma reconstrução de baixo para cima que é descrita no meu Tese de mestrado . Os principais pontos são:

  • verifica a unidade inteira procurando vestígios de arquivos
  • reconstrói a árvore de diretórios ou qualquer parte dele que possa ser restaurada
  • permite exportar o conteúdo dos arquivos com os nomes corretos

Para executar a ferramenta no arquivo de imagem criado, crie um diretório de saída e inicie o RecuperaBit com:

mkdir /path/to/another/drive/recovered_files
cd [full path of recuperabit]
pypy main.py /path/to/backup.dmg -o /path/to/another/drive/recovered_files -s /path/to/another/drive/recovered_files/savefile.save

A opção -s armazena um log útil de setores interessantes que você pode carregar novamente em execuções subsequentes na mesma imagem de disco.

Após o processo de verificação, ele começará a determinar a geometria de qualquer partição NTFS. Execute o comando recoverable para ver as partições e, em seguida, para restaurar, e. partição #2 :

restore 2 5
restore 2 -1

Onde 5 significa o diretório Root e -1 significa o diretório Arquivos perdidos . Você provavelmente encontrará muitas coisas interessantes no diretório Lost Files porque sua unidade está danificada.

Verifique a outra resposta para algumas advertências e limitações.

A propósito, como você corrigiu um pouco o programa para o seu caso específico, seria bom se você pudesse enviar seu patch como um pedido pull.

    
por 14.09.2016 / 20:53