Top.Mail.Ru
КОНФИГУРАТОР Серверы
Сетевое оборудование
СХД IP-телефоны IP-камеры Источники бесперебойного питания (ИБП) Комплектующие Готовые решения -40 % Серверы под задачу
О компании Купить в лизинг Блог Отзывы Доставка Гарантия Контакты Работа у нас Реквизиты Спецпредложения Игровые ПК на ISKRAPC
Эксперты в подборе IT-оборудования

Как восстановить удаленные данные в Linux

31 марта 2019

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

В зависимости от типа файловой системы и самого файла можно использовать разные инструменты. Для ext3/ext4 хорошие успехи демонстрирует утилита extundelete, для восстановления картинок (JPEG/PNG/GIF и т.д.) чаще всего используется foremost, но самая известная и универсальная - scalpel. Давайте начнем с нее.


Универсальный боец: восстановление с помощью scalpel

Для воскрешения мертвых данных утилита будет пользоваться базами данных заголовков, так что перед стартом надо будет внести типы и заголовки потерянных файлов в ее конфигурационный файл (/etc/scalpel/scalpel.conf или /etc/scalpel.conf). Вообще-то в нем уже по умолчанию указаны заголовки наиболее используемых типов файлов, так что нужные строки надо будет просто раскомментировать. Ну или собственные заголовки указать - по ситуации.

Чтобы установить утилиту:

sudo apt install scalpel

Предположим, мы удалили jpeg-картинку, и нам нужно ее восстановить. Мы открываем файл конфигурации и приводим нужную нам секцию к такому виду:

# GIF and JPG files (very common)

gif 5000000 \x47\x49\x46\x38\x37\x61 \x00\x3b

gif 5000000 \x47\x49\x46\x38\x37\x61 \x00\x3b

200000000 \xff\xd8\xff\xe0\x00\x10 xff\xd9

Запускаем сам scalpel:

sudo scalpel /dev/sda1 -o recover

/dev/sda1 - название устройства, на котором мы ищем удаленные файлы, опция -o указывает на папку, в которую нужно скинуть искомые файлы после восстановления. Естественно, чем меньше времени прошло с момента удаления, тем лучше - меньше шансов, что на место удаленного уже записано нечто актуальное.

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


Качественно и нескоро: foremost

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

Команда установки:

sudo apt install foremost

Восстанавливаем изображения:

sudo foremost -t jpg,gif,png,bmp -i /dev/sda1 -o ~/recover

Дополнительно почитать о параметрах утилиты можно в справочной системе - man foremost

 
Поделитесь статьей в соцсетях   
 
Вам также может быть интересно

Товар добавлен в список сравнения
Перейти в сравнение
Продолжить просмотр
Подбираете сервер для 1С?
Подпишитесь на специальную серию писем про выбор и настройку сервера под 1С
Подписаться
Боитесь неправильно выбрать сервер?
Оставьте свой email, и мы пришлем чек-лист с 5 самыми распространенными ошибками
Получить чек-лист
Нажимая кнопку "Получить чек-лист", вы даёте согласие на обработку персональных данных
Заказать консультацию
IT-архитектор подберет сервер под вашу задачу
Заказать сервер
Мы свяжемся с вами в течение 15 мин
Заявка на лизинг