Наши партнеры

UnixForum





Библиотека сайта rus-linux.net

Scalpel – мощный инструмент для восстановления удаленных файлов в Linux

Оригинал: Scalpel – Powerful Tool to Recover Deleted Files on Linux
Автор: Anusha Saive
Дата публикации: March 13, 2024
Перевод: В. Костромин
Дата перевода: 19.03.2024 г.

Часто случается, что пользователь по ошибке нажимает ‘Shift + Delete‘ на файлах вместо просто ‘Delete‘ , поскольку в силу наших естественных привычек многие из нас склонны использовать эту функцию, даже не осознавая этого.

Я сама оказалась в такой ситуации несколько дней назад. Я активно работала над проектом и сохранила свой рабочий файл в определенном каталоге, содержащем многочисленные нежелательные файлы, которые необходимо было удалить без возможности восстановления.

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

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

Это был разочаровывающий опыт, и я осознала, как важно проявлять осторожность при управлении файлами, чтобы избежать таких случайных удалений.

Как работает удаление файлов в Linux

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

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

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

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

Восстановление потерянных файлов в Linux с помощью инструмента Scalpel

Для Windows-систем предлагается множество сторонних инструментов для восстановления утерянных данных, тогда как Linux, особенно Ubuntu, предоставляет лишь несколько вариантов. Используя Ubuntu в качестве операционной системы, я столкнулась с проблемой поиска инструмента для восстановления потерянного файла.

В ходе моихпоисков я наткнулась на ‘Scalpel‘ — инструмент, предназначенный для сканирования всего жесткого диска и восстановления потерянных файлов. После его установки я успешно восстановила потерянный файл и должна сказать, что Scalpel — действительно потрясающий инструмент.

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

Давайте займемся этим.

Что представлят собой Scalpel?

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

Ключевые особенности Scalpel включают возможность поиска по всему жесткому диску, что делает его эффективным при восстановлении файлов, даже если они были удалены из каталога или базы данных. Инструмент известен своей надежностью при работе с файлами различных типов и форматов.

Одной из примечательных характеристик Scalpel является его пригодность для использования из командной строки, что соответствует предпочтениям многих пользователей Linux, которым комфортно работать в терминале.

Scalpel оказывается ценным инструментом для пользователей Linux, сталкивающихся с проблемой восстановления потерянных файлов, предоставляя эффективное и надежное решение для восстановления данных в ситуациях, когда другие инструменты могут оказаться неэффективными.

Как установить Скальпель в Linux

Чтобы установить Scalpel в Linux, используйте одну из следующих команд, соответствующую вашему дистрибутиву Linux.

sudo apt install scalpel         [В Debian, Ubuntu и Mint]
sudo yum install scalpel         [В RHEL/CentOS/Fedora и Rocky/AlmaLinux]
sudo emerge -a sys-apps/scalpel  [В Gentoo Linux]
sudo apk add scalpel             [В Alpine Linux]
sudo pacman -S scalpel           [В Arch Linux]
sudo zypper install scalpel      [В OpenSUSE]    
sudo pkg install scalpel      [Во FreeBSD]

После установки Scalpel вам потребуется немного отредактировать текст. Scalpel поставляется с собственным файлом конфигурации, расположенным в каталоге ‘/etc‘. Полный путь: “/etc/scalpel/scalpel.conf” или “/etc/scalpel.conf“.

Открыв файл конфигурации

sudo nano /etc/scalpel/scalpel.conf
или
sudo nano /etc/scalpel.conf

вы увидите, что изначально все закомментировано символами '#'.

Перед запуском Scalpel вам необходимо раскомментировать форматы файлов, которые вы хотите восстановить. Однако раскомментирование всего файла может занять много времени и привести к множеству ложных результатов.

Например, если вы хотите восстановить только файлы '.jpg', вы можете просто раскомментировать раздел с файлами '.jpg' в файле конфигурации Scalpel.

Configure Scalpel
Файл конфигурации Scalpel

После этого выполните в терминале следующую команду для поиска удаленных файлов:

sudo scalpel /path/to/target/directory

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

Команда создаст каталог ‘rec’, содержащий восстановленные файлы в указанном каталоге. Просмотрите восстановленные файлы и переместите их в безопасное место.

Заключение

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

I suggest everyone get into the habit of using just “delete” instead of “Shift + Delete“. Remember, it’s always better to prevent a mistake than to try and fix it later.


Anusha Saive

Photo of author Ануша много лет работала в ИТ-индустрии в должности менеджера проекта, а также старшего писателя и редактора в Tecmint. Она большая поклонница Linux и увлечена написанием материалов о Linux и связанным с этой ОС технологиям.

В статье "Утилиты для восстановления потерянных данных в Linux" перечислен еще ряд утилит, которые могут быть использованы для поиска и восстановления потерянных данных в Linux. А в этой статье "Как восстанавливать удаленные файлы на компьютерах под управлением Linux?" приведено описание еще одной утилиты, которая может использоваться для той же цели - Recoverit.