Discos rígidos e outros dispositivos de armazenamento estão sujeitos a falhas. Algumas vezes essas falhas podem ser causadas por vírus ou malware, outras vezes por corrupção dos dados, erro humano, ou também falha mecânica. Independente da razão, a perda de dados é no melhor dos casos uma dor de cabeça, mas pode significar problemas muito maiores dependendo dos dados envolvidos.
Muitas vezes supomos que a recuperação de dados de um disco é um serviço especializado, de alta complexidade e que necessita mão-de-obra técnica. Mas nos casos onde a falha não é mecânica é possível recuperar parcial ou totalmente os dados através de software desenvolvido especificamente para isso. Nesse tutorial vamos falar de duas ferramentas de recuperação de dados, TestDisk e Foremost. Ambas ferramentas estão disponíveis para as principais distribuições Gnu/Linux e podem ser instaladas através de gerenciadores de pacotes como o APT, Synaptic ou Ubuntu Software Center.
Testdisk
Com o TestDisk, além de restaurar arquivos corrompidos e excluídos, também é possível alterar e escrever partições e tentar recuperar discos que não estão inicializando normalmente.
O programa deve ser rodado no terminal com privilégios administrativos:
$ sudo testdisk
A partir desse comando o programa apresenta uma interface de texto com diversas opções. Para recuperar arquivos, devemos seguir os seguintes passos. Primeiro, precisamos escolher entre criar ou não um arquivo de log da operação, essa opção não influencia nos próximos passos. Depois dessa escolha, o programa listará os dispositivos de armazenamento de dados instalados e montados na sua máquina. Você deve ser capaz de identificar em qual deles quer buscar pelos arquivos perdidos. Selecionando o disco correto, agora é hora de escolher qual formato de partição o programa deve buscar – na grande maioria dos casos deve-se selecionar Intel (para discos formatados como ext2, ext3, NTFS, FAT32 entre outros). Agora selecione [Analyse]. O programa iniciará buscando por partições e em alguns casos pode encontrar antigas partições que não nos interessam ou que ele é incapaz de recuperar. Pressione [Continue] até encontrar a partição procurada. Ao encontrar, é possível listar todos os arquivos contidos na partição com a tecla P (shift+p) e então copiar os arquivos. Os principais comandos para realizar operações com os arquivos são os seguintes:
- : para selecionar o diretório / arquivo destacada
- a para selecionar todos os diretórios / arquivos
- c para copiar o arquivo destacado
- C (shift+c) para copiar todos os arquivos
- seta direita, seta esquerda para navegar pelos diretórios
Uma vez copiados os arquivos, o programa automaticamente nos direciona para nossa pasta pessoal onde podemos selecionar onde queremos colar os arquivos. A tecla para colar os arquivos é C. Esse processo pode demorar bastante tempo.
Foremost
Foremost é uma ferramenta muito completa de data carving . Ele busca por cabeçalhos e rodapés dos arquivos no disco e os reconstrói a partir dessas informações. É um processo mais complexo mas que consegue recuperar dados que estão mais corrompidos ou danificados.
Com os comandos básicos é possível executar uma varredura do disco alvo copiando os arquivos de forma rápida através de filtragens por formato de arquivo. Supondo que os arquivos procurados sejam imagens, uma busca exclusiva por jpg e png se torna muito mais ágil do que buscar por todos os arquivos contidos no disco. Os principais comandos são os seguintes:
- -t antecede uma lista separada por vírgulas de formatos de arquivos que você quer buscar
- -v modo verbose, exibe informações do andamento da operação de cópia
- -o o diretório onde você quer salvar os arquivos de saída (output) da sua varredura
- -i o diretório onde você quer efetuar a busca (input), pode ser um HD, ou outras imagens de disco de diferentes formatos
por exemplo:
$ sudo foremost -t pdf,jpg,odt -o pastadesaida -v -i /dev/sdb
Nesse exemplo, utilizamos o [sudo] para obter privilégios administrativos e fazemos uma busca por arquivos pdf, jpg e odt no dispositivo e copiamos os arquivos que correspondem a essa busca em diretório chamado .
Além dessas duas ferramentas que apresentamos aqui, existem várias outras opções livres e de código aberto para recuperação dados. Algumas são mais especializadas e outras amplas demais. Para problemas mais específicos ou complexos essas outras opções podem ser úteis. Lembre-se: mantenha sempre um backup de seus informações mais sensíveis!