Como recuperar um arquivo excluído no Linux

Alguma vez isso aconteceu com você? Você percebeu que deletou um arquivo por engano – seja através da tecla Del, ou usando rm na linha de comando.

No primeiro caso, você sempre pode ir para a Lixeira, procurar pelo arquivo, e restaurá-lo para sua localização original. Mas e quanto ao segundo caso? Como eu tenho certeza de que você provavelmente sabe, a linha de comando do Linux não envia os arquivos removidos para lugar algum – ela os REMOVE. Puf. Eles se foram.

Leitura sugerida: Como Recuperar Arquivos/Diretórios Deletados Usando a Ferramenta Scalpel

Neste artigo, compartilharemos uma dica que pode ser útil para evitar que isso aconteça com você, e uma ferramenta que você pode considerar usar se, em algum momento, você for descuidado o suficiente para fazê-lo de qualquer maneira.

Crie um alias para ‘rm -i’

O switch -i, quando usado com rm (e também outras ferramentas de manipulação de arquivos como cp ou mv), causa um prompt a aparecer antes de remover um arquivo.

A mesma coisa se aplica a copiar, mover ou renomear um arquivo em um local onde um com o mesmo nome já existe.

Esta mensagem lhe dá uma segunda chance de considerar se realmente deseja remover o arquivo – se você confirmar a mensagem, ele desaparecerá. Nesse caso, sinto muito, mas essa dica não irá protegê-lo de sua própria negligência.

Para substituir rm por um alias para 'rm -i', faça:

alias rm='rm -i'

O comando alias confirmará que rm agora está com alias:

Add Alias rm Command

No entanto, isso durará apenas durante a sessão de usuário atual no shell atual. Para tornar a alteração permanente, você terá que salvá-la em ~/.bashrc (algumas distribuições podem usar ~/.profile em vez disso) conforme mostrado abaixo:

Add Alias Permanently in Linux

Para que as alterações em ~/.bashrc (ou ~/.profile) tenham efeito imediato, carregue o arquivo a partir do shell atual:

. ~/.bashrc
Active Alias in Linux

A ferramenta forense – Foremost

Espero que você tenha cuidado com seus arquivos e só precise usar essa ferramenta ao recuperar um arquivo perdido de um disco externo ou unidade USB.

No entanto, se você perceber que removeu acidentalmente um arquivo em seu sistema e estiver prestes a entrar em pânico – não o faça. Vamos dar uma olhada no foremost, uma ferramenta forense projetada para esse tipo de cenários.

Para instalar o foremost no CentOS/RHEL 7, você precisará habilitar o Repoforge primeiro:

# rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el7.rf.x86_64.rpm
# yum install foremost

Enquanto no Debian e derivados, apenas faça

# aptitude install foremost

Assim que a instalação estiver concluída, vamos prosseguir com um teste simples. Vamos começar removendo um arquivo de imagem chamado nosdos.jpg do diretório /boot/images:

# cd images
# rm nosdos.jpg

Para recuperá-lo, use o foremost da seguinte forma (você precisará identificar a partição subjacente primeiro – /dev/sda1 é onde /boot reside neste caso):

# foremost -t jpg -i /dev/sda1 -o /home/gacanepa/rescued

onde /home/gacanepa/rescued é um diretório em um disco separado – tenha em mente que recuperar arquivos no mesmo disco onde os removidos estavam localizados não é uma jogada inteligente.

Se, durante a recuperação, você ocupar os mesmos setores de disco onde os arquivos removidos costumavam estar, pode não ser possível recuperar nada. Além disso, é essencial parar todas as suas atividades antes de realizar a recuperação.

Depois que o foremost terminar de executar, o arquivo recuperado (se a recuperação for possível) será encontrado dentro do diretório /home/gacanepa/rescued/jpg.

Resumo

Neste artigo, explicamos como evitar remover um arquivo acidentalmente e como tentar recuperá-lo se um evento indesejado ocorrer. Esteja avisado, no entanto, que o foremost pode levar bastante tempo para ser executado, dependendo do tamanho da partição.

Como sempre, não hesite em nos informar se tiver perguntas ou comentários. Sinta-se à vontade para nos enviar uma mensagem usando o formulário abaixo.

Source:
https://www.tecmint.com/recover-deleted-file-in-linux/