Как я могу эффективно восстановить окончательно удаленную папку сразу?

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

Я пробовал некоторые инструменты для восстановления удаленных файлов, перечисленных в этих статьях:

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

Как я могу восстановить удаленную папку сразу?

1 ответ

Решение

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

  1. Резчики файлов → Они сканируют любые типы дисков и пытаются восстановить известные типы файлов, проверяя наличие определенных подписей. Например, файлы JPEG всегда начинаются с байтов FF D8, Этот метод работает только для не фрагментированных файлов, и вы не получите никакой информации о его имени или расположении.

  2. Инструменты, работающие на уровне файловой системы. → Они читают (возможно поврежденные) разделы, просматривая дерево каталогов, а затем используют указанную там информацию для доступа к файлам. По этой причине они могут получить доступ к любому файлу, если он указан в файловой системе.

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

В вашем случае сценарий выглядит следующим образом:

  • у вас есть недавно удаленная папка
  • Вы хотите восстановить его структуру каталогов
  • вам нужно восстановить все элементы внутри

Таким образом, вы не будете использовать файловые резчики, и вам следует избегать их. Вам нужен инструмент, который "говорит" NTFS (файловая система, используемая Windows).

Прекратить использование этого раздела

Вы можете попытаться восстановить файлы из Windows напрямую, однако это будет ужасная идея. Чем больше вы используете свою ОС, тем больше у вас шансов перезаписать их новыми данными.

По этой причине прекратите использовать Windows сейчас и загрузите свой компьютер с помощью живого DVD или USB-диска Linux (практически любая современная версия подойдет, независимо от того, является ли это Ubuntu, Fedora или чем-то еще). Если у вас нет готового живого DVD или USB, используйте другой компьютер для его создания или купите журнал, который включает DVD с Linux. Не используйте компьютер для создания загрузочного носителя, так как это может привести к записи большого количества содержимого на жесткий диск во время операции.

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

Восстановление удаленных файлов с дисков NTFS

Отказ от ответственности: я разработчик RecuperaBit. Кроме того, следующая часть основана на моих предыдущих ответах, размещенных здесь на Unix & Linux Stack Exchange и здесь, на Ask Ubuntu.

Идентификация правильного привода

Бежать sudo lsblk определить ваш основной раздел NTFS (скажем, C: привод). Вывод может выглядеть примерно так:

$ sudo lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda      8:0    0   32G  1 disk 
├─sda1   8:1    0  500M  1 part 
└─sda2   8:2    0 31.5G  1 part 
sr0     11:0    1  2.8G  0 rom  /cdrom
loop0    7:0    0  2.1G  1 loop /rofs

Это говорит мне о том, что этот диск имеет небольшой раздел размером 500 МБ (загрузчик Windows) и больший - 31,5 ГБ на весь диск объемом 32 ГБ. Следовательно, теперь я знаю, что C: диск виртуальной машины, которую я тестирую /dev/sda2,

Использование TestDisk

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

Если вы используете ОС на базе Debian (включая Ubuntu), вы можете установить ее с помощью следующей команды:

sudo apt-get install testdisk

После этого запустите его на диске:

sudo testdisk /dev/sda2

Следуйте инструкциям на экране. В основном вам нужно нажимать Enter, пока он не спросит вас о типе таблицы разделов (None потому что мы сканируем один раздел).

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

Обратите внимание, что из-за того, как Windows обрабатывает корзину, каталог может быть найден в C:\$Recycle.Bin и не в своем первоначальном месте. По сути, ищите его, пока не найдете.

Если вы найдете его, выделите его клавишами со стрелками, а затем нажмите C. Это войдет в режим копирования. Вам нужно перейти на внешний USB-накопитель (он будет где-то в /media/ т.е. внутри media в корневом каталоге системы Linux), а затем снова нажмите C, чтобы выбрать его в качестве каталога назначения.

Готово, вы скопировали всю папку!

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

В этом случае следуйте следующей сессии.

Использование RecuperaBit

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

Вот почему я разработал RecuperaBit, который использует восходящий подход для реконструкции NTFS. Выполните следующие шаги, чтобы восстановить вашу папку:

  • Создать каталог с именем recuperabit_output в вашем внешнем USB-накопителе.
  • Загрузите RecuperaBit с GitHub и распакуйте его в папку.
  • Запустите его, передав диск и путь, в котором хранятся восстановленные файлы в качестве аргументов:

    sudo python /path/to/RecuperaBit/main.py /dev/sda2 -o /path/to/the/external/USB/drive/recuperabit_output
    
  • Позвольте ему сканировать диск, нажав Enter.

  • Тип csv 0 list.csv создать список файлов.
  • Откройте полученный CSV-файл с помощью LibreOffice, чтобы найти идентификатор каталога. Пример:

    Если бы я хотел восстановить информацию о томе системы, это был бы каталог 31,

  • Вернитесь к консоли RecuperaBit и введите restore 0 31 где 0 означает первый раздел, т.е. единственный, который вы анализируете.

Ну вот, теперь у вас есть файлы на внешнем USB-диске под recuperabit_output/Partition0,

Другие вопросы по тегам