Pesquisa de site

Instale o Scalpel (uma ferramenta de recuperação do sistema de arquivos) para recuperar arquivos/pastas excluídos no Linux


Muitas vezes acontece que acidentalmente ou por engano pressionamos ‘shift + delete‘ nos arquivos. Pela natureza humana você tem o hábito de usar ‘shift + Del’ em vez de usar apenas a opção ‘Excluir’. Na verdade, tive esse incidente alguns dias atrás. Eu estava trabalhando em um projeto e salvei meu arquivo de trabalho em um diretório. Havia muitos arquivos indesejados nesse diretório e precisam ser excluídos permanentemente. Então comecei a excluí-los um por um. Ao excluir esses arquivos, pressionei acidentalmente ‘shift delete’ em um dos meus arquivos importantes. O arquivo foi excluído permanentemente do meu diretório. Eu queria saber como recuperar arquivos excluídos e não tinha ideia do que fazer. Quase passei muito tempo restaurando o arquivo, mas sem sorte.

Com um pouco de conhecimento técnico, eu sabia como funciona o sistema de arquivos e o HDD. Quando você exclui um arquivo acidentalmente, o conteúdo do arquivo não é excluído do seu computador. Ele acabou de ser removido da pasta do banco de dados e você não consegue ver o arquivo no diretório, mas ele ainda permanece em algum lugar do seu disco rígido. Basicamente, o sistema possui um ponteiro de lista para blocos no dispositivo de armazenamento que ainda contém os dados. Os dados não são excluídos do dispositivo de armazenamento em bloco, a menos que você os substitua por um novo arquivo. Neste ponto de vista eu liberei que meu arquivo excluído ainda pode permanecer em algum lugar em uma área não indexada do disco rígido. No entanto, é recomendável desmontar imediatamente um dispositivo assim que você perceber que excluiu algum arquivo importante. Desmontar ajuda a evitar que os arquivos bloqueados sejam substituídos por um novo arquivo.

Nesse cenário eu não queria sobrescrever esses dados, por isso preferi pesquisar no disco rígido sem montá-los.

Normalmente no Windows temos toneladas de ferramentas de terceiros para recuperar dados perdidos, mas no Linux apenas algumas. Porém eu uso o Ubuntu como sistema operacional e é muito difícil encontrar uma ferramenta que recupere arquivos perdidos. Durante minha pesquisa, conheci o ‘Bisturi‘, uma ferramenta que percorre todo o disco rígido e recupera um arquivo perdido. Instalei e recuperei com sucesso meu arquivo perdido com a ajuda da ferramenta Bisturi. É uma ferramenta realmente incrível, devo dizer.

Isso também pode acontecer com você. Então pensei em compartilhar minha experiência com você. Neste artigo vou mostrar como recuperar arquivos excluídos com a ajuda da ferramenta bisturi. Aqui vamos nos.

O que é a ferramenta Bisturi?

Scalpel é uma recuperação de sistema de arquivos de código aberto para sistemas operacionais Linux e Mac. A ferramenta visita o armazenamento do banco de dados em bloco e identifica os arquivos excluídos dele e os recupera instantaneamente. Além da recuperação de arquivos, também é útil para investigações forenses digitais.

Como instalar o bisturi no Debian/Ubuntu e Linux Mint

Para instalar o Scalpel, abra o terminal fazendo “CTrl+Alt+T” na área de trabalho e execute o seguinte comando.

sudo apt-get install scalpel
Saída de amostra
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following NEW packages will be installed:
  scalpel
0 upgraded, 1 newly installed, 0 to remove and 390 not upgraded.
Need to get 0 B/33.9 kB of archives.
After this operation, 118 kB of additional disk space will be used.
Selecting previously unselected package scalpel.
(Reading database ... 151082 files and directories currently installed.)
Unpacking scalpel (from .../scalpel_1.60-1build1_i386.deb) ...
Processing triggers for man-db ...
Setting up scalpel (1.60-1build1) ...
tecmint@tecmint-Latitude-D630:~$

Instalando Scalpel no RHEL/CentOS e Fedora

Para instalar a ferramenta de recuperação de bisturi, primeiro você precisa habilitar o repositório epel. Depois de ativado, você pode fazer ‘yum’ para instalá-lo conforme mostrado.

yum install scalpel
Saída de amostra
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.01link.hk
 * epel: mirror.nus.edu.sg
 * epel-source: mirror.nus.edu.sg
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package scalpel.i686 0:2.0-1.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

==========================================================================================================================================================
 Package		Arch		Version			Repository		Size
==========================================================================================================================================================
Installing:
 scalpel                i686            2.0-1.el6               epel                    50 k

Transaction Summary
==========================================================================================================================================================
Install       1 Package(s)

Total download size: 50 k
Installed size: 108 k
Is this ok [y/N]: y
Downloading Packages:
scalpel-2.0-1.el6.i686.rpm                                                           |  50 kB     00:00     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : scalpel-2.0-1.el6.i686							1/1 
  Verifying  : scalpel-2.0-1.el6.i686                                                   1/1 

Installed:
  scalpel.i686 0:2.0-1.el6                                                                                                                                

Complete!

Depois que o bisturi estiver instalado, você precisará fazer a edição do texto. Por padrão, o utilitário bisturi tem seu próprio arquivo de configuração no diretório '/etc' e o caminho completo é “/etc/scalpel/scalpel.conf” ou “/etc /scalpel.conf“. Você pode notar que tudo está comentado (#). Portanto, antes de executar o bisturi, você precisa descomentar o formato do arquivo que deseja recuperar. No entanto, descomentar o arquivo inteiro é demorado e gerará enormes resultados falsos.

Digamos, por exemplo, que eu queira recuperar apenas arquivos ‘.jpg’, então simplesmente descomente a seção do arquivo ‘.jpg’ para o arquivo de configuração do bisturi.

GIF and JPG files (very common)
        gif     y       5000000         \x47\x49\x46\x38\x37\x61        \x00\x3b
        gif     y       5000000         \x47\x49\x46\x38\x39\x61        \x00\x3b
        jpg     y       200000000       \xff\xd8\xff\xe0\x00\x10        \xff\xd9

Vá para o terminal e digite a seguinte sintaxe. O ‘/dev/sda1‘ é o local de um dispositivo de onde o arquivo já foi excluído.

sudo scalpel /dev/sda1-o output

A opção ‘-o‘ indica um diretório de saída, onde você deseja restaurar seus arquivos excluídos. Certifique-se de que este diretório esteja vazio antes de executar qualquer comando, caso contrário ocorrerá um erro. A saída do comando acima é.

Scalpel version 1.60
Written by Golden G. Richard III, based on Foremost 0.69.

Opening target "/dev/sda1"

Image file pass 1/2.
/dev/sda1:   6.1% |***** 		|    6.6 GB    39:16 ETA

Como você pode ver, o bisturi agora está executando seu processo e levará algum tempo para recuperar o arquivo excluído, dependendo do espaço em disco que você está tentando digitalizar e da velocidade da máquina.

Eu recomendo que todos vocês tenham o hábito de usar apenas delete em vez de “Shift + Delete“. Porque como disse é sempre melhor prevenir do que remediar.