7 способов восстановить удаленные файлы в линукс
Программы восстановления файлов — одна из самых важных частей в наборе инструментов администратора Linux. Они дают возможность восстанавливать удаленные файлы даже в тех случаях, когда диск либо физически поврежден, либо стерт начисто. В этом руководстве показаны семь простых инструментов для восстановления файлов, которые вы можете установить прямо сейчас в Linux.
Восстановление удаленного файла общие сведения
Дело в том, что при простом удалении, файл помещается в корзину и вообще не удаляется. Т.е. файл остается в системе, лишь только перемещен в специальный раздел. Сейчас так работает большинство операционных систем включая те, что на базе Linux.
После удаления файла из корзины, он все равно полностью не удаляется. Физически секции и разделы на диске участвующие в хранении конкретного файла остаются также заполненными данными конкретного файла. Даже в таблице файловой системы файл остается, просто пространство для его хранения помечается разрешенным для перезаписи. На простом примере представим что наш диск содержит всего 100 ячеек памяти, и на нем есть 3 файла, распределенные в этом пространстве. Сейчас я покажу очень упрощенную схему файловой системы диска.
Название файла | Секторы | Разрешена ли перезапись |
---|---|---|
текстовый документ.doc | 0-10 | НЕТ |
Картинка.png | 40-90 | НЕТ |
Мини-приложение.sh | 11-39 | НЕТ |
Как я и сказал, это очень упрощенная схема файловой системы. Реальная гораздо сложнее и зависит от типа, но этого достаточно, для общего понимания процесса. Итак, когда мы удалим к примеру Картинка.png, она попадет в корзину, из корзины ее легко восстановить прямо из файлового менедежера, просто зайти в корзину, щелкнуть по файлу правой кнопкой мыши и выбрать пункт “Восстановить” или подобный (зависит от опереционной системы).
Если же мы удалили файл и из корзины, наша таблица файловой системы становится такой:
Название файла | Секторы | Разрешена ли перезапись |
---|---|---|
текстовый документ.doc | 0-10 | НЕТ |
Картинка.png | 40-90 | ДА |
Мини-приложение.sh | 11-39 | НЕТ |
И теперь система понимает что в сектора от 40 по 90 мы можем записывать данные, так как это свободное пространство. Но физически, пока мы не записали новый файл, попадающий полностью или частично в эти сектора, файл можно спасти, и здесь мы постепенно переходим к программам для восстановления удаленных файлов в Linux.
Testdisk
Одна из самых популярных программ для восстановления удаленных файлов в системе Linux. Сразу нужно оговориться, что программа не восстанавливает файлы, а восстанавливает разделы. Ее нужно использовать в тех случаях, когда вы удалили таблицу разделов файловой системы или случайно неверно отформатировали диск. В таких случаях она поможет восстановить структуру раздела и соответственно, если не было никаких перезаписей, все файлы окажутся нетронутыми.
Плюсы:
- Восстанавливает целые разделы диска
- Исправляет диски с незагружаемой операционной системой
Минусы:
- Невозможно восстановить отдельные файлы
- Восстановление раздела не гарантирует, что его содержимое будет там.
Photorec
Программа восстановления файлов в Linux путем вырезания данных. В кратце это процесс вырезания необработанных байтов и последующий поиск в них содержимого и связей конкретного файла. Программа поставляется вместе с Testdisk и не требует отдельной установки. Однако для восстановления требует знаний об изначальной файловой системе, в которой находился файл, если, конечно, она было отличная от текущей.
Плюсы:
- Алгоритм восстановления быстрый
- Работает с различными форматами файловой системы
Минусы:
- Восстановление может быть наказанием для твердотельных накопителей
- Требуется отдельная файловая система для хранения файлов
Scalpel
Это быстрая и эффективная программа, которая использует регулярные выражения для восстановления любых потерянных файлов на диске Linux. Подобно Photorec, Scalpel просматривает ваш диск и ищет любую комбинацию байтов, которая может указывать на наличие существующих данных
Плюсы:
- Работает как с файлами устройств, так и с образами дисков
- Позволяет фильтровать тип файла, который вы хотите восстановить
Минусы:
- Файл конфигурации может сбивать с толку
- Может быть ненадежным при обнаружении типов файлов
ddrescue
Программа отличается максимально точным восстановлением и сохранением данных. Суть ее работы заключается в том, что она полностью сканирует диск и делает его побайтовую копию, исключая только те фрагменты, которые не связаны с какими-либо файловыми сущностями или просто пустыми секторами. Такой подход позволяет восстанавливать данные даже с поврежденных дисков, но, конечно же только данные не попавшие в поврежденные сектора.
Плюсы:
- Создает точную копию вашего диска
- Пропускает поврежденные сектора на жестком диске
Минусы:
- Не будет напрямую восстанавливать отсутствующий файл
- Может быть медленным на больших жестких дисках
Fatcat
Программа для восстановления стертых файлов в файловой системе Fat, начиная от Fat12 и заканчивая более современной Fat32. Программа отлично подходит для восстановления данных со старых жестких дисков, использованных под управлением системы Windows. Умеет восстанавливать разделы файловой системы и считывать данные на лету, при построении карты раздела.
Плюсы:
- Загружает содержимое раздела FAT на лету
- Исправляет поврежденные файловые системы FAT.
Минусы:
- Не поддерживает exFAT
- Восстановление отдельных каталогов может быть сложным
Ntfsundelete
Данная утилита восстановления удаленных данных с жесткого диска является встроенной в пакет совместимости ntfs-3g, который имеется во многих современных дистрибутивах так сказать “из коробки” и соответственно не требует отдельной установки. Принцип работы и возможности очень схожи с Fatcat, отличие только в файловой системе.
Плюсы:
- Входит в большинство дистрибутивов Linux
- Восстанавливает отдельные файлы
Минусы:
- Ненадежная работа с файлами устройств
- Восстановленные имена файлов могут отличаться от исходных
Ext4magic
Данная утилита служит программой для восстановления удаленных данных уже с чисто Linux’овыми таблицами разделов Ext3 и Ext4. Для восстановления данных использует журналы этих файловых систем, что позволяет работать по диапазону дат. Это может быть очень удобно, когда вы точно не помните название файла, но хорошо знаете в какой период времени он точно существовал.
Плюсы:
- Использует файл журнала, чтобы помочь в восстановлении файлов
- Сканирует файловую систему на наличие проблем
Минусы:
- Может быть ненадежным со старыми удаленными файлами
Мы рассмотрели основные и одни из самых популярных программ для восстановления удаленных файлов в Linux. Если у вас есть комментарии по данной статье, вы хотите что-то дополнить или просто высказаться, добро пожаловать в мой Телеграм канал SoftAppNews
comments powered by Disqus