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:

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:

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

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/