Поиск по сайту:

Установите Scalpel (инструмент восстановления файловой системы) для восстановления удаленных файлов и папок в Linux


Часто случается, что мы случайно или по ошибке нажимаем «shift + delete» для доступа к файлам. По человеческой природе у вас есть привычка использовать «shift + Del» вместо использования только опции «Delete». У меня действительно был этот инцидент несколько дней назад. Я работал над проектом и сохранил свой рабочий файл в каталоге. В этом каталоге было много нежелательных файлов, и их необходимо удалить без возможности восстановления. Поэтому я начал удалять их один за другим. Удаляя эти файлы, я случайно нажал «shift delete» на одном из моих важных файлов. Файл был навсегда удален из моего каталога. Мне было интересно, как восстановить удаленные файлы, и я понятия не имел, что делать. Я почти потратил много времени на восстановление файла, но безуспешно.

Обладая некоторыми техническими знаниями, я знал, как работают файловая система и HDD. Если вы случайно удалите файл, его содержимое не будет удалено с вашего компьютера. Он просто удаляется из папки базы данных, и вы не можете увидеть файл в каталоге, но он все равно остается где-то на вашем жестком диске. По сути, в системе есть указатель списка блоков, на устройстве хранения данных еще есть данные. Данные не удаляются с блочного устройства хранения до тех пор, пока вы не перезапишете их новым файлом. На этом этапе я сообщил, что мой удаленный файл все еще может оставаться где-то в неиндексированной области Жесткого диска. Однако рекомендуется немедленно отключить устройство, как только вы поймете, что удалили какой-либо важный файл. Отключение помогает предотвратить перезапись заблокированных файлов новыми.

В этом сценарии я не хотел перезаписывать эти данные, поэтому предпочитал искать на жестком диске, не монтируя его.

Обычно в Windows имеется множество сторонних инструментов для восстановления утерянных данных, но в Linux их всего несколько. Однако в качестве операционной системы я использую Ubuntu, и очень сложно найти инструмент, который восстановит утерянный файл. Во время моего исследования я узнал о «Скальпеле» — инструменте, который просматривает весь жесткий диск и восстанавливает потерянный файл. Я установил и успешно восстановил потерянный файл с помощью инструмента Scalpel. Должен сказать, это действительно потрясающий инструмент.

Это также может случиться и с вами. Поэтому я подумал поделиться с вами своим опытом. В этой статье я покажу вам, как восстановить удаленные файлы с помощью скальпеля. Итак, поехали.

Что такое инструмент «Скальпель»?

Scalpel — это программа восстановления файловой системы с открытым исходным кодом для операционных систем Linux и Mac. Инструмент посещает хранилище блочной базы данных, идентифицирует удаленные из него файлы и мгновенно восстанавливает их. Помимо восстановления файлов, это также полезно для цифровой криминалистики.

Как установить Scalpel в Debian/Ubuntu и Linux Mint

Чтобы установить Scalpel, откройте терминал, нажав «CTrl+Alt+T» на рабочем столе, и выполните следующую команду.

sudo apt-get install scalpel
Пример вывода
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:~$

Установка Scalpel в RHEL/CentOS и Fedora

Чтобы установить инструмент восстановления скальпеля, вам необходимо сначала включить репозиторий epel. Как только он будет включен, вы можете нажать «ням», чтобы установить его, как показано.

yum install scalpel
Пример вывода
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!

После установки скальпеля вам необходимо заняться редактированием текста. По умолчанию утилита скальпеля имеет собственный файл конфигурации в каталоге «/etc», а полный путь – «/etc/scalpel/scalpel.conf» или «/etc». /scalpel.conf“. Вы можете заметить, что все закомментировано (#). Поэтому перед запуском скальпеля вам необходимо раскомментировать формат файла, который необходимо восстановить. Однако раскомментирование всего файла отнимает много времени и приводит к огромным ложным результатам.

Допустим, например, я хочу восстановить только файлы «.jpg», поэтому просто раскомментируйте раздел файла «.jpg» для файла конфигурации скальпеля.

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

Перейдите к терминалу и введите следующий синтаксис. «/dev/sda1» — это местоположение устройства, с которого файл уже удален.

sudo scalpel /dev/sda1-o output

Переключатель «-o» указывает выходной каталог, в который вы хотите восстановить удаленные файлы. Прежде чем запускать любую команду, убедитесь, что этот каталог пуст, иначе вы получите ошибку. Вывод приведенной выше команды.

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

Как вы видите, скальпель сейчас выполняет свою работу, и для восстановления удаленного файла потребуется время в зависимости от дискового пространства, которое вы пытаетесь сканировать, и скорости машины.

Я бы порекомендовал вам всем иметь привычку использовать только delete вместо «Shift + Delete». Потому что, как говорится, профилактика всегда лучше лечения.