Opcional: Filtre os arquivos recuperados

Opcional: Filtre os arquivos recuperados

Eu errei ao tentar avaliar a velocidade de gravação em um cartão SD com arquivos importantes nele.

sync; sudo dd if=/dev/zero of=/dev/sdb1 bs=1M count=1024; sync
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 23.5386 s, 45.6 MB/s
^C

Percebi que estava gravando diretamente em /dev/sdb1 em vez de gravar em um arquivo dentro da placa montada, então, com medo de sobrescrever os dados, cancelei logo após o benchmark parecer ter terminado (não estava). Agora ele será montado automaticamente, mas não mostrará nada (não é possível clicar nele no explorador de arquivos e o gparted apenas o mostra como um cartão exfat desconhecido.

O que posso fazer?

Responder1

Existem muitos aplicativos de recuperação, pessoalmente acho que photorecfuncionam foremostmelhor. Photorec faz parte do testdiskpacote, principalmente pode ser instalado a partir do foremostpacote.

a) Photorec

Basta executar $ photorec /dev/sdbagora para abrir a interface interativa do photorec.

Pressione Enter ( [Proceed]) para selecionar o disco. Na próxima tela, você será solicitado a selecionar uma partição. Se o photorec encontrar as partições corretas, você pode selecionar aquela da qual deseja recuperar os arquivos aqui. Se não detectar as partições corretamente, simplesmente selecione No partition [Whole disk]e pressione Enter novamente para executar o [Search]. Uma vez selecionado o tipo de sistema de arquivos na próxima tela, você precisa selecionar um diretório no qual os arquivos recuperados devem ser salvos. Confirme com C.

b) Em primeiro lugar

Enquanto o photorec funciona tentando encontrar "blocos de dados" da unidade e da mídia usandoescultura de arquivo, acima de tudo, faz isso de maneira um pouco diferente. Ele ainda usa o conceito de gravação de arquivos, mas ignora o tipo de sistema de arquivos subjacente e funciona diretamente copiando segmentos da unidade para sua RAM, que é então verificada em busca de tipos de cabeçalho de arquivo. O principal vem com muitos cabeçalhos integrados para recuperar a maioria dos tipos de arquivos comuns; se você deseja adicionar cabeçalhos/rodapés personalizados para detectar tipos de arquivos menos comuns, o principal oferece essa capacidade.

Para executar principalmente usando as opções padrão da imagem, execute o seguinte comando:

$ foremost -i /dev/sdb -v

Você pode usar /dev/sdb1aqui se quiser recuperar arquivos apenas dessa partição.

Isso salvará todos os arquivos recuperados no output(novo diretório que será criado). Você pode especificar outro diretório de saída usando o -osinalizador e -aignorar erros/salvar arquivos corrompidos.

Opcional: Filtre os arquivos recuperados

Isso é opcional, mas às vezes você está interessado apenas em tipos específicos de arquivos, ou pior ainda: as ferramentas de recuperação fornecem um milhão de arquivos, dos quais milhares parecem ser, por exemplo, um arquivo JPEG, mas na realidade é apenas um arquivo corrompido. arquivo e nem uma imagem. Para filtrá-los, você pode usaresseresposta que dei para outra pergunta no SuperUser.


Como você pode evitar isso no futuro

Vejo pessoas bagunçando seus dados com ddmuita frequência. É muito fácil. Minha recomendação:

#!/bin/bash
read -r -p "Have you checked at least TWICE if the parameters are correct? [y/N] " response
response=${response,,}
if [[ "$response" =~ ^(yes|y)$ ]]; then
    dd "$@"
else
    echo "Better be safe than sorry."
fi

Salve como /usr/bin/sddou qualquer nome que desejar. chmod +xisso depois. De agora em diante, use sempre sddem vez de dd.

informação relacionada