Como recuperar dados de um cartão SD ruim?

23

Eu tenho um cartão SD de 4 GB com algumas fotos de família que preciso recuperar. Quando insiro o cartão no meu leitor de cartão, ele aparece como um dispositivo desconhecido de 32 MB (as /dev/sde) e não pode ser montado. Ao inserir novamente na câmera (uma Nikon D60), diz que os cartões precisam ser formatados (assim como a inserção em uma máquina Windows). Quero recuperar todas as fotos no cartão (havia outras antes das fotos da família) porque não sei quantas fotos tirei ou seus tamanhos exatos (mas acredito que eram todas JPEGs). O cartão deve ser formatado como um sistema de arquivos FAT32.

Quais utilitários Linux ou Unix estão disponíveis para recuperar os arquivos? Posso fazer isso sozinho ou preciso procurar ajuda profissional?

Editar: parece que meu leitor de cartão danificou o cartão de alguma forma, tornando-o ilegível e não-formatável. Quando verifiquei outro cartão exatamente o mesmo (exceto arquivos), ele "estragou" o segundo. Gostaria de usar o segundo cartão novamente, então existe uma ferramenta para formatar um cartão danificado que não sabe (ou não pode relatar adequadamente) qual o tamanho?

n0pe
fonte

Respostas:

29

Primeiro, pela sua experiência com o segundo cartão, parece que seu leitor está danificado e agora danifica os cartões inseridos nele. Pare de usar esse leitor imediatamente e tente recuperar o cartão com outro leitor. Se seus dados são valiosos, tente obter um leitor de nome de marca com melhor qualidade do que um preço mais baixo.

Se o cartão estiver apenas parcialmente ilegível e não completamente ilegível, tente primeiro copiar o que puder do cartão para um arquivo de imagem. Não use ddpara isso, pois ele irá parar de ler no primeiro erro. Use ferramentas como dd_rescueou ddrescue. Ambas as ferramentas tentam obter o máximo de dados possível do disco. Exemplo de uso ( /dev/sdcsendo o dispositivo correspondente ao cartão; se você não souber qual é, execute cat /proc/partitionse escolha o que parece ter o tamanho certo):

ddrescue -dr3 /dev/sdc card.image logfile

Como parece que a estrutura do sistema de arquivos está danificada (seus sistemas operacionais oferecem formatação da unidade porque não vêem um sistema de arquivos válido), você terá que tentar recuperar os arquivos individualmente. Felizmente, os ficheiros de imagem começam com um cabeçalho reconhecível, e há muitas existentes ferramentas de escultura que reconhecem imagens: Em primeiro lugar , MagicRescue , PhotoRec (dos criadores de TestDisk ), RecoverJPEG , ...

A maioria dessas ferramentas está disponível em distribuições unix típicas. Mas se preferir, você pode executar uma distribuição para fins especiais ou outro CD ao vivo, incluindo ferramentas de recuperação como SysRescueCD , Knoppix , CAINE

Gilles 'SO- parar de ser mau'
fonte
Eu acho que a maioria dos meus problemas se deve ao fato de os cartões serem reconhecidos como apenas 32 MB, quando deveriam ter 4 GB. E não tenho como dizer quais são os cilindros, cabeçotes e setores de baixo nível.
2
@ Tyler: Se o seu cartão não for reconhecido no tamanho certo pelo hardware, substitua o leitor imediatamente. Se você tentou copiar a imagem e a cópia parou devido a erros após 32 MB, tente novamente com uma ferramenta semelhante ddrescue. Você não precisa saber nada sobre cilindros / cabeças / setores.
Gilles 'SO- stop be evil'
O que a opção -dr3 faz? Estou tentando me recuperar de um cartão SD, mas essas doses não são montadas. Recebo o seguinte: Erro de leitura desalinhada. O tamanho do setor está correto?
user3236841 21/09
Nas páginas do manual, a -dr3opção significa -d, que significa "usar acesso direto ao disco", ignorando os caches de kernel do conteúdo do disco e -r3, o que significa tentar novamente a leitura 3 vezes, se ocorrer um erro em um setor defeituoso.
Sean
9

PhotoRec de http://www.cgsecurity.org/ - gratuito, de código aberto, fácil de usar. Apenas recuperei um monte de fotos e vídeos de família de um cartão SD corrompido. Simplesmente descompacte em uma pasta, execute o arquivo e aponte-o para a unidade.

user36649
fonte
8

Eu recomendo o TestDisk . Eu usei com sucesso para recuperar arquivos de discos rígidos corrompidos. Eu normalmente uso uma distribuição como TRK ou SystemRescueCd .

agn
fonte
6

Você não detalhou como os dados foram perdidos. Se for uma exclusão lógica e o dispositivo não tiver visto muita gravação, as chances de recuperar dados são boas: o conselho óbvio é procurar o TestDisk & Photorec . Obviamente, a recomendação tradicional: proteger contra gravação do dispositivo original, exponha-o à menor interação possível. O melhor de tudo é que, ddem algum suporte diferente, desconecte-o e trabalhe no arquivo de imagem. Se, por outro lado, "ruim" no assunto significa fisicamente arruinado, as coisas ficam mais difíceis, mas você deve tentar da mesma forma, porque geralmente uma parte menor dos blocos fica ilegível. Especialmente no SD, que tem uma reputação de resistência muito alta.

user495100
fonte
Não sei como , mas o cartão não parece danificado fisicamente . E eu não estou muito familiarizado com o dd, então como posso recuperar a imagem do cartão? O que especificamente eu precisaria fazer com a imagem?
Tente encontrar uma maneira confiável de conectar o sd a um PC. Suponha que você gerencie e o dispositivo bruto seja mapeado no dispositivo de bloco / dev / sda (use dmesg para saber seu nome). Em seguida, faça dd if=/dev/sda of=/mnt/hda1/image.dd bs=1Monde / mnt / hda1 é o ponto de montagem de outro suporte grande o suficiente. Em seguida, desconecte o sd, faça uma cópia do image.dd e trabalhe no último para não precisar recarregar o SD. Consulte o guia passo a passo do TestDisk em sua página inicial. Felizmente, pelo que você diz, parece que você só precisa restaurar a tabela de partição / mbr. Boa sorte.
precisa saber é o seguinte
1
@ Tyler: Não use dd, pois ele pára no primeiro erro. Use algo parecido ddrescue.
Gilles 'SO- stop be evil'
2

Eu usei o photorec, que vem no pacote testdisk. Funcionou bem para mim recuperar fotos de um microsd sandisk que foi corrompido pelo meu telefone.

Samue
fonte
1
Você pode, pelo menos, fornecer links e documentação para detalhar um pouco sua resposta?
precisa saber é o seguinte
PhotoRec trabalhou para mim. Meu cartão SD perdeu o sistema de arquivos fat32 e não estava montando. O PhotoRec me ajudou a recuperar a maior parte.
Chetan Bhargava