
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 photorec
funcionam foremost
melhor. Photorec faz parte do testdisk
pacote, principalmente pode ser instalado a partir do foremost
pacote.
a) Photorec
Basta executar $ photorec /dev/sdb
agora 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/sdb1
aqui 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 -o
sinalizador e -a
ignorar 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 dd
muita 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/sdd
ou qualquer nome que desejar. chmod +x
isso depois. De agora em diante, use sempre sdd
em vez de dd
.