Como Recuperar um Arquivo Excluído no Linux

Isso já aconteceu com você? Você percebeu que deletou um arquivo por engano – seja pressionando a 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 tenho certeza de que você provavelmente sabe, a linha de comando do Linux não envia os arquivos removidos para nenhum lugar – ele 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, 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) faz com que um prompt apareça antes de remover um arquivo.

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

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

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

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 do usuário atual no shell atual. Para tornar a alteração permanente, será necessário salvá-la em ~/.bashrc (algumas distribuições podem usar ~/.profile em vez disso), como mostrado abaixo:

Add Alias Permanently in Linux

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

. ~/.bashrc
Active Alias in Linux

A ferramenta forense – Foremost

Esperançosamente, você terá cuidado com seus arquivos e só precisará usar esta 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ário.

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, basta fazer

# 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 como esse acontecer. 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 dúvidas 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/