Восстановление удалённых файлов в Linux (Инструкция для начинающих)

Главная страница » OS Linux » Восстановление удалённых файлов в Linux (Инструкция для начинающих)

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

Вы увидите, как восстановить удаленные файлы с SD-карт, жестких дисков и удаленных разделов в различных файловых системах Linux, таких как EXT3, EXT4, и даже из файловых систем Windows, таких как FAT32 и NTFS.

Содержание

Восстановить файлы из удаленного раздела

Это довольно проблематично. Часто пользователи Linux часто устанавливают несколько систем одновременно и могут ошибочно удалить раздел во время процесса установки.

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

Testdisk — мощная утилита для анализа разделов и восстановления данных. Он поставляется с большим количеством дистрибутивов Linux, таких как Debian и Ubuntu.

С другой стороны, приложение является кроссплатформенным и поддерживает большое количество таблиц разделов, таких как Intel, MSDOS и Mac. Это самые популярные таблицы разделов.

Кроме того, он поддерживает многие файловые системы, такие как NTFS, EXT4 и другие непопулярные файловые системы, такие как BeOS и ReiserFS.

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

Сначала запустите приложение так:

$ testdisk

Далее у вас есть возможность создать новый файл для журналов. Если вы хотите создать его, выберите опцию создания и нажмите Enter. Если вам не нужен файл журнала, выберите опцию No Log.

Linux

Затем будут проверены диски или разделы, распознаваемые системой. В данном конкретном случае sda — это раздел, который мы хотим восстановить.

Linux

TestDisk распознает различные типы таблиц разделов. Обычно это Intel. Если вы не используете специализированный.

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

На следующем экране вы увидите ряд параметров, которые есть в программе. Для этого конкретного случая нам нужно выбрать опцию «Анализ».

С помощью этой опции программа будет тщательно анализировать диск, чтобы найти структуру.

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

Затем он спросит о типе поиска, который вы хотите сделать. Обычно выбирают опцию быстрого поиска.

Linux

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

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

Затем выберите опцию «Запись», чтобы записать таблицу разделов. Когда закончите, перезапустите систему, и ваш раздел вернется!

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

Обратите внимание, что на этих этапах это может занять много времени. Это зависит от размера диска.

В зависимости от типа файловой системы этот раздел может иметь определенные инструкции. Они будут подробно описаны позже.

Восстановить удаленные файлы с внешнего диска

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

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

Для запуска программы мы будем использовать команду testdisk. Кроме того, мы можем добавить флэш-накопитель в качестве параметра следующим образом:

$ sudo testdisk / dev / sdb

Linux

Далее выберите продолжить. Затем выберите тип таблицы разделов.

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

Затем выберите Дополнительные параметры для восстановления файлов.

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

Следующим шагом является выбор раздела и опция Undelete.

Linux

Затем вы увидите все удаленные файлы в разделе.

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

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

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

Наконец, вы увидите это сообщение:

Linux

Файлы восстановлены!

Восстановить удаленные файлы с SD-карты

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

В этом случае мы будем использовать приложение Photorec, которое включено в TestDisk.

Сначала вставьте SD-карту в ПК. Далее запустите photorec от имени пользователя root:

$ sudo photorec [устройство]

Затем вы увидите следующее изображение. Выберите мультимедиа, продолжите и нажмите Enter.

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

Далее выберите раздел. И выберите Функции и нажмите Enter.

Linux

Там вы увидите параметры восстановления, которые будут выполняться на SD-карте.

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

Нажмите q, чтобы вернуться к предыдущему экрану. И там нужно выбирать типы файлов, которые мы хотим восстановить. Это достигается путем выбора опции File Opt.

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

Нажмите клавишу s, чтобы выбрать и отменить выбор всех форматов. Вы также можете выбрать типы файлов, которые вы хотите восстановить, используя правильный ключ. Чтобы сохранить выбранные параметры, нажмите клавишу b. Вернитесь в главное меню с помощью клавиши q.

Затем в главном меню выберите опцию «Поиск», чтобы начать процесс. И выберите файловую систему.

Linux

Затем вам будут представлены два варианта. Свободный и Целый. Обычно бесплатно достаточно. Если вы хотите сделать глубокий анализ, выберите Целый, но имейте в виду, что это замедлит процесс.

Теперь необходимо выбрать место, куда будут сохраняться файлы. Для этого нажмите клавишу c.

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

После выбора места назначения начнется процесс восстановления. Помните, что система рухнет и зависнет. Так что наберитесь терпения.

В конце вы увидите сообщение, информирующее вас обо всем, что произошло.

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

Далее проверьте результаты.

Linux

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

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

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

Сначала вам нужно отсканировать диск или раздел. Например:

$ sudo ntfsundelete / dev / sda1

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

Затем мы сможем восстановить удаленный файл с помощью следующей команды:

  $ sudo ntfsundelete [HD_Or_partition] -u -m [имя файла]

Linux

  Восстановленные файлы теперь принадлежат пользователю root. Последний шаг — изменить права доступа и владельцев файлов с помощью команды chown .

Восстановить файлы из FAT32

Другой распространенной файловой системой Windows является FAT32. Вы можете восстановить файлы из FAT32 с помощью TestDisk.

Итак, снова запустите testdisk от имени пользователя root и передайте диск в качестве параметра:

$ sudo testdisk [раздел / HD]

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

Затем продолжите шаги, описанные выше, для восстановления файлов.

Восстановить в памяти файлы (с помощью inode)

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

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

В этом случае я создам файл example.txt с помощью редактора nano и добавлю немного текста:

$ nano example.txt

Затем сохраните изменения и откройте другое окно терминала и используйте файл. Например, с помощью команды less .

$ less example.txt

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

  Откройте другой сеанс терминала, удалите файл и убедитесь, что он удален:

$ rm example.txt

$ ls example.txt

Linux

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

$ lsof |  grep example.txt

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

Вы заметите процесс и команду, которая использует файл (команда less). Исходя из этого изображения, мы должны обратить внимание на второе и четвертое значения. Это PID процесса и дескриптор файла соответственно.

Затем восстановите его с помощью следующей команды:

$ ls -l / proc / 2325 / fd / 4

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

Затем скопируйте его в любое место, которое вам нужно, и этого достаточно для его восстановления.

$ sudo cp / proc / 2325 / fd / 4.

  Далее проверьте результаты и откройте файл:

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

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

Восстановить удаленные файлы из EXT4 (с помощью extundelete)

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

Один из используемых инструментов для восстановления файлов из файловой системы EXT4 — extundelete.

Extundelete — это приложение с открытым исходным кодом, которое позволяет восстанавливать удаленные файлы из раздела или диска с файловой системой EXT3 или EXT4. Он прост в использовании и по умолчанию устанавливается в большинстве дистрибутивов Linux.

Чтобы восстановить определенный файл, просто используйте следующую команду:

$ sudo extundelete [device] -restore-file [pathfile]

Например:

$ sudo extundelete / dev / sdb1 -restore-file home / angelo / other.txt

Если вы хотите восстановить все файлы в папке, используйте подстановочный знак:

$ extundelete / dev / sda6 -restore-file home / angelo / *

Но если вы хотите восстановить все файлы в разделе или на диске, подойдет следующая команда:

$ extundelete / dev / sda6 -restore-all

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

Итак, восстановленные файлы будут в каталоге RECOVERED_FILES. Таким образом, вы можете восстановить удаленные файлы, используя extundelete.

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

Также можно использовать инструмент debugfs для восстановления удаленных файлов. Этот инструмент также использует номер индекса удаленного файла. Однако он работает только в файловых системах EXT4.

Его работа тоже довольно проста. Сначала необходимо ввести раздел или устройство.

$ debugfs [устройство]

Например,

$ sudo debugfs / dev / sdb1

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

Затем через некоторое время вы сможете войти в консоль debugfs для поиска недавно удаленных файлов.

$ debugfs: lsdel

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

В первом столбце вы увидите номер inode удаленных файлов на этом устройстве. Затем восстановите его с помощью следующей команды:

$ debugfs mi <inode_number>

На этом всё, довольно легко.

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

Другой альтернативный способ восстановления удаленных файлов на диске с файловой системой Ext4 — это использование Ext4magic. Это приложение также довольно просто в использовании.

Основным синтаксисом приложения является следующий:

$ sudo ext4magic [device] -f [folder_to_scan] -r -d [output_folder]

Если бы я хотел восстановить удаленные файлы из папки с именем files, команда была бы похожа на эту:

  Файлы $ sudo ext4magic / dev / sdb1 -r -d

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

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

Восстановить перезаписанные файлы (используя скальпель)

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

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

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

Самый быстрый и простой способ использования Scapel заключается в следующем:

$ scalpel [device] -o [output_folder]

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

Но как Scapel узнает, какие файлы нужно восстановить? Ну, это определено в файле конфигурации приложения.

Этот файл конфигурации обычно находится в следующем месте:

 /etc/scalpel/scalpel.conf

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

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

Форматы файлов, которые вы раскомментируете, Scalpel найдет его.

Далее выполните полную команду Scalpel и в выходной папке вы увидите восстановленные файлы.

$ sudo scalpel / dev / sdb1 -o recovered_files1

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

Иногда Scalpel восстанавливает части файла. Это зависит от работоспособности накопителя и количества поврежденных данных.

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

Восстановление файлов из не загружаемой системы

Это деликатный случай, потому что нам нужен доступ с Live-диска Ubuntu или другого аналогичного дистрибутива Linux. После загрузки мы можем использовать TestDisk, чтобы попытаться восстановить данные.

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

Если это не работает, вы можете попробовать восстановить раздел с помощью TestDisk, как описано выше.

Вывод

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

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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Новинки
Компьютер включается сам по себе
2021
OS Windows, Прочее
Компьютер включается сам по себе?

Вы уверяете, что выключили компьютер с Windows, когда уходили, но когда вы снова садитесь перед компьютером, он оказался включён. Как это может быть? Затем однажды вы поймаете, что компьютер включается […]

2021
Прочее
Как сделать сайт WordPress безопасным

В наши дни запустить собственный сайт WordPress довольно просто, но не стоит забывать сделать сайт WordPress безопасным и надёжным. Иначе, хакерам не понадобится много времени, чтобы начать нацеливаться на ваш […]

2020
Комплектующие / железо
Как увеличить время автономной работы ноутбука

Независимо от того, купили ли вы новый ноутбук или какое-то время у вас был свой, важно поддерживать аккумулятор ноутбука в хорошем состоянии и при необходимости увеличить время автономной работы ноутбука. […]