Восстановление удаленных файлов Linux
Иногда случается, что мы случайно удаляем еще нужные нам файлы. Особенно это опасно в терминале Linux, поскольку здесь файлы удаляются не в корзину, а стираются с диска сразу и навсегда.
Понятно, что нужно аккуратно обращаться с командами удаления файлов, но что делать если уже все удалено, а файлы были важные и их нужно срочно восстановить? В некоторых случаях это возможно. В нашей сегодняшней статье мы рассмотрим восстановление удаленных файлов linux.
Немного теории
Каждый файл занимает определенное пространство на жестком диске, но файловая система для предоставления доступа к файлу дает нам ссылки на его начало, по которым любая программа может получить уже содержимое всего файла. Было бы неэффективно, если бы удаление файла приводило к полному перезаписыванию его области на диске.
Вместо этого, файловая система просто удаляет ссылку на эту область со своей базы, а затем помечает пространство, где находился файл, неразменным. Но на самом деле там еще остались все ваши файлы. Из этого делаем вывод, что если после удаления файловую систему очень быстро переключить в режим только для чтения, то все удаленные файлы могут быть восстановлены.
Если же вы работали с этой файловой системой и данные на диске были перезаписаны другими, то вы уже ничего сами не спасете. Возможно, вы слышали, что спецслужбы могут восстанавливать несколько раз перезаписанные данные по остаточному магнитному следу на диске. Это действительно так. Но для решения такой задачи нужно специальное оборудование, здесь недостаточно нескольких программ, нужен специальный лазер, который может считать магнитный след по краям дорожки и другая аппаратура. Так что про этот метод для себя можете забыть.
Ну а мы остановимся на программном восстановлении, когда данные были формально удалены, но физически еще находятся на диске в целостности и сохранности. Дальше рассмотрим несколько утилит, которые помогут восстановить удаленные файлы linux.
1. Safecopy
Safecopy — это довольно простой инструмент для восстановления данных, который просто копирует данные из одного места в другое. Утилита, как таковая, не восстанавливает отдельные файлы. Она просто позволяет скопировать данные из поврежденного устройства на нормальное.
Разница между этой утилитой и другими программами копирования в том, что Safecopy не завершается при обнаружении каких-либо ошибок, будь то плохая операция чтения или поврежденный сектор. У нее есть множество дополнительных опций для настройки, а также возможность создания образа файловой системы из поврежденного носителя. Данные восстанавливаются тщательно и быстро, насколько это возможно.
Утилиту можно установить из официальных репозиториев вашего дистрибутива. Пользователи Ubuntu могут воспользоваться такой командой:
sudo apt install safecopy
Здесь вы не восстановите удаленные файлы, но вы можете скопировать поврежденные данные. Например, для видео несколько повреждений не играют большой роли. Для запуска восстановления файлов в linux с раздела /dev/sda1 выполните:
sudo safecopy /dev/sda1 /home/files/
Все файлы, которые удастся скопировать будут в /home/files/.
2. TestDisk
TestDisk — это очень мощный инструмент для восстановления данных. Он не пытается скопировать данные из поврежденного устройства, а позволяет исправить ошибки и проблемы на уровне разделов, которые могут мешать работе с вашими данными.
Утилита может восстанавливать потерянные разделы, исправлять таблицу разделов GPT и MBR, делать резервные копии дисков, восстанавливать загрузочные записи, а главное восстанавливать удаленные файлы с файловых систем NTFS, FAT, exFAT и файловых систем семейства Ext. Также вы можете копировать файлы даже с удаленных разделов для тех же файловых систем.
Способ работы утилиты очень сильно отличается в зависимости от нужного действия. Здесь вас ждет псевдографический мастер, который проведет вас через все шаги. Установить testdisk можно так же само из официальных репозиториев. В Ubuntu используйте для этого команду:
sudo apt install testdisk
Поскольку тема нашей статьи — восстановление файлов linux, рассмотрим как это делается с помощью этой утилиты. Запустите программу:
На первом шаге мастера выберите Create New Log:
Дальше выберите диск, с которым будем работать:
Выберите таблицу разделов на диске:
Для работы с файловой системой выберите пункт Advanced:
Далее выберите раздел, затем команду list:
Тут вы увидите все файлы, которые есть на этом разделе. Удаленные, но подлежащие восстановлению файлы будут помечены красным.
Работать с этой утилитой удобнее, чем с Photorec, потому что здесь вы можете выбрать только один нужный файл, а не восстанавливать сразу кучу мусора. Чтобы скопировать файл просто выберите его, нажмите c и выберите папку для сохранения. Правда, вы же понимаете, что для восстановления нужно, чтобы файлы были не перезаписаны, где-то чуть перезапишется и все.
3. PhotoRec
Наша последняя программа ориентирована в первую очередь на поиск и восстановление удаленных видео, фото, документов и архивов. Можно сказать, что это программа восстановления удаленных файлов linux. Преимущество PhotoRec заключается в том, что она полностью игнорирует файловую систему и смотрит на сырые данные, а это значит, что она все равно будет работать, даже если файловая система повреждена или переформатирована, но только в быстром режиме, там где стираются лишь заголовки.
Во избежание каких-либо проблем, здесь используется доступ только для чтения, этого вполне достаточно для восстановления данных. Но как я говорил раньше, вам нужно остановить все операции записи, как только вы поняли, что нужно восстановить файл. В противном случае нужные данные могут быть перезаписаны чем-то новым и вы уже не сможете их восстановить.
В утилиты есть несколько настроек. Вы можете указать расширения файлов, которые нужно найти, размер, дату изменения и так далее. Установить программу можно так же как и TestDisk — из официальных репозиториев.
Например, в Ubuntu выполните:
sudo apt install photorec
Что касается использования, то тут похожий на testdisk интерактивный интерфейс. Запустите утилиту командой:
Выберите диск, с которым нужно работать:
Выберите файловую систему:
Выберите способ сканирования (неразмеченное пространство/весь раздел) Затем выберите папку для сохранения результата:
Дождитесь завершения процесса:
Программа восстановит много файлов, и скорее всего больше чем вам нужно. Причем главная ее проблема в том, что имена файлов не сохраняются и вам придется еще поискать, чтобы найти есть ли там то что нужно.
Выводы
Эти три инструмента охватывают широкий спектр задач по восстановлению файлов linux. Здесь вы сможете выполнить не только восстановление удаленных файлов linux ext4, но и исправить жесткий диск или скопировать файлы с поврежденных носителей.
А какие ваши любимые утилиты для восстановления данных? Какими вы пользуетесь? Напишите в комментариях!
На десерт видео от Discovery о том, как работает жесткий диск:
Лучшие 15 инструментов для восстановления данных в Linux
Иногда Вам может понадобиться получить доступ к основным данным, сохраненным в хранилище компьютера под управлением Linux, но Вы можете неоднократно потерпеть неудачу. Наиболее распространенными причинами такой проблемы являются вирусная атака, постоянное или случайное удаление файлов, сообщения об ошибках и так далее. Какой бы ни была причина, такая потеря может нанести вам непоправимый ущерб. Например непредвиденная ошибка, в случае которой вы вряд ли сможете принять меры предосторожности. Но то, что вы определенно можете сделать, это использовать несколько инструментов Linux для восстановления потерянных данных.
В этой статье приведён перечень из 15 наиболее достойных инструментов восстановления файлов Linux, которые вы можете использовать без каких-либо колебаний. Ниже приведено подробное описание функций каждого инструмента восстановления данных Linux.
1. Ddrescue Data Recovery Tool
Ddrescue — это лицензионное программное обеспечение GNU, которое вы можете бесплатно использовать для восстановления потерянных данных. Этот дистрибутив восстановления данных Linux является «экспертом» в спасении данных при возникновении ошибок чтения. Для этого он просто копирует файл с компакт-диска или жесткого диска на другое внешнее или внутреннее устройство:
- Доступен как фрагмент дистрибутива для восстановления/мультизагрузки или как один загрузочный компакт-диск.
- Достаточно мощный для восстановления данных, несмотря на все виды дисковых ошибок и поврежденных секторов.
- Может быть остановлен и возобновлен в любое время.
- Log-файл отслеживает процесс и уменьшает избыточное сканирование.
- Объединяет несколько поврежденных копий дисков или файлов.
2. SafeCopy
SafeCopy — это инструмент восстановления файлов Linux, который предназначен для получения максимального объема данных с повреждённого диска. Этот инструмент написан с использованием языка программирования C.
- Возможность сброса устройств в другие инструкции низкого уровня.
- Работает в фоновом процессе, не замедляя работу компьютера.
- Доступен на 16 разных языках.
- Вы можете установить SafeCopy на любое количество компьютеров без дополнительной оплаты.
- Опция приватной ссылки позволяет вам делиться большими файлами или папками.
3. TestDisk
TestDisk — это бесплатная утилита для восстановления данных с открытым исходным кодом. Она предназначена для восстановления потерянных разделов хранилища файлов. TestDisk также может превратить диск в загрузочный, если есть какая-либо ошибка вызвана вирусной атакой или неисправным программным обеспечением.
- Вы можете использовать TestDisk для сбора полной информации о поврежденном диске.
- Собранная информация также может быть передана техническим специалистам для дополнительного анализа.
- Совместимость с многочисленными операционными системами, включая Linux, Windows, Mac OS X, SunOS и т.д.
- Средство восстановления разделов Linux способно распознавать многие разделы диска, например таблицу разделов Apple и GUID.
- Может работать с повреждениями определенной логической файловой системы.
4. Redo Backup and Recovery
Redo Backup and Recovery считается самым простым в использовании системным программным обеспечением для восстановления компакт-дисков. Причина кроется в наличии улучшенного графического интерфейса и широко распространенных операциях. Утилита выпущена под GNU GPL3. Это один из инструментов восстановления дисков Linux, оснащенный удобными функциями многозадачности.
- Позволяет получить доступ к другим инструментам, даже если некоторые другие операции выполняются в фоновом режиме.
- Вы можете установить его на загрузочный CD или USB.
- Это одна из программ восстановления разделов Linux, которая может клонировать разделы диска с помощью программы Partclone.
- Доступны веб-браузер, текстовый редактор, файловый менеджер и терминал.
5. PhotoRec
PhotoRec относится к тем редким приложениям для восстановления дисков Linux, которые предназначены для восстановления отсутствующих файлов, содержащих документы, архивы и видео, с CD-ROM и жестких дисков. Эта мультиплатформенная программа с открытым исходным кодом совершенно бесплатна. Обычно она распределяется под «GNU General Public License».
- PhotoRec может восстановить фотографии, стёртые из памяти цифровой камеры.
- Может обнаружить невидимые данные, даже если ваша среда файловой системы серьезно повреждена.
- Для обеспечения дополнительной безопасности инструмент использует read-only доступ для управления картой памяти.
- Может превратить не загрузочный диск в загрузочный, так как является вспомогательной утилитой TestDisk.
6. SystemRescue CD
Это программа восстановления файлов Linux, которую можно использовать с загрузочного USB-накопителя или компакт-диска. SystemRescue CD предоставляет Вам несколько инструментов, позволяющих извлекать данные, создавать и редактировать разделы, проверять жесткий диск.
- Системный инструмент FSArchiver позволяет сохранять материалы файловой системы в сжатый архивный файл.
- Загрузка Memtest86+, FreeDOS и диагностика оборудования.
- Возможность создать загрузочный диск для многих операционных систем.
- Может как архивировать, так и разархивировать файлы.
- Поддерживает веб-браузеры, такие как ELinks, Firefox и Midori.
7. Avira Rescue System
Avira Rescue System — это антивирусное приложение, которое не только сканирует вашу систему на наличие вирусов, но и восстанавливает поврежденную систему. Это также набор инструментов, которые содержат утилиту, используемую для записи загрузочного компакт-диска. Вы даже можете загрузить компакт-диск в виде папки ISO.
- Не зависит от хост-компьютера, так как имеет свою собственную операционную систему на основе Linux.
- Вы можете использовать его для очистки не загружаемого компьютера и обнаружения вредоносных программ.
- Включает в себя антивирусную программу, которая может искать и удалять вредоносные программы.
- Часто обновляется, поэтому ваша операционная система всегда остаётся защищенной.
8. Knoppix
Knoppix считается лучшей и наиболее часто используемой утилитой Linux, которую вы можете использовать для восстановления поврежденной системы. Это операционная система, основанная на Debian, предназначенная для работы с USB или DVD/CD. Также вы можете установить её на жесткий диск.
- Две версии доступны на немецком и английском языках.
- Содержит несколько собственных программ, несмотря на открытый исходный код и бесплатное программное обеспечение.
- Вы можете использовать её для копирования файлов непосредственно с жестких дисков, подключенных к недоступным операционным системам.
- Доступны инструменты администрирования и сетевого анализа.
9. Trinity Rescue Kit
Это бесплатный дистрибутив Linux. Предназначен для восстановления файлов и исправления системы на Linux и Windows. Он имеет специальную функцию, которая вызывает универсальную клавиатуру для обслуживания и исправления неполадок на компьютере. Возможности варьируются от сброса пароля до сканирования на вирусы.
- Интерфейс меню прост и удобен в использовании.
- Поддерживает широкий спектр оборудования.
- Обновление выполняется автоматически для обеспечения безопасности ваших данных.
- Возможность восстановить отсутствующие разделы.
- Очистка неисправного диска.
- Наличие простого скрипта, который позволяет найти и смонтировать локальную файловую систему.
10. GParted Live
GParted Live — небольшой дистрибутив Linux, который предлагает все функции программы GParted. Хотя дистрибутив пока нельзя использовать в качестве долговременного дистрибутива Linux, вы можете запустить его с загрузочного компакт-диска. USB-накопитель также можно использовать его для запуска дистрибутива для восстановления данных, испорченных разделов, создания раздела и т.д.
- Обеспечивает 100% восстановление данных с отсутствующих разделов.
- Может активировать и деактивировать как загрузочные, так и скрытые флаги разделов.
- Может генерировать gpt или msdos как таблицы разделов.
- Эксперт в создании, перемещении, копировании, изменении размера, проверке, маркировке и удалении разделов.
- Совместим с широким спектром запоминающих устройств.
11. Foremost
Foremost — еще одно замечательное приложение Linux, которое восстанавливает ваши потерянные файлы, используя структуры данных, нижние и верхние колонтитулы. Метод восстановления файлов обычно называется «file carving». Хотя эта утилита написана для использования правоохранительными организациями, вы можете свободно использовать её в качестве обычного инструмента восстановления файлов Linux.
- Владеет возможностью игнорирования атрибутов безопасности основной файловой системы.
- Возможность извлечения определенных типов файлов, таких как png, jpg, BMP, gif, avi, mpg, exe, wav, wmy, riff, mov, pdf, doc, ole, zip и многие другие.
- Наличие файла конфигурации, который вы можете использовать для определения дополнительных типов файлов.
- Возможность использования для получения файлов с iPhone через компьютер.
- Может извлекать данные из файлов образов.
12. Scalpel
Этот превосходный инструмент для восстановления файлов, основанный на Foremost. Дистрибутив для восстановления данных в Linux наилучшим образом использует асинхронный вывод/ввод и многопоточность для эффективного сквозного поиска.
- Возможность сортировки различных типов файлов.
- Возможность восстанавливать диски независимо от их файловой системы.
13. Grep
Grep — удивительная command-line программа, которая ищет «текстовые выражения» для строк, которые соответствуют типичному выражению. Её название было получено из команды «g/re/p». Эта утилита изначально была предназначена для операционной системы Unix, но в настоящее время она доступна во всех Unix-подобных системах.
- Достаточно мощная утилита для поиска и восстановления недостающих данных с образа диска или заблокированного устройства.
- Как результат, создает вполне читабельные для человека двоичные файлы.
- Возможность поиска нужных данных вручную.
14. Ultimate Boot CD
Ultimate Boot CD — это загрузочный набор лучших бесплатных программ для любых задач восстановления данных в Linux. Инструмент был создан более 15 лет назад. С помощью этого приложения вы можете определить, в чем заключается проблема, и таким образом вернуть ваши данные в надлежащее состояние.
- Легко работает с USB-накопителя.
- Способен выполнять несколько задач, включая клонирование неисправных дисков и изучение отдельных аппаратных элементов.
- Отлично работает с устаревшим оборудованием.
- Автоматически обновляется.
- Включает набор инструментов для работы с HDD, BIOS, CPU, System, Memory, Peripherals и многими другими вещами.
15. Mondo Rescue
Mondo — еще одна замечательная утилита для восстановления жесткого диска Linux, которая бесплатна и заслуживает доверия. Многие крупные и крошечные компании и около 10 тысяч пользователей в настоящее время широко используют эту невероятную программу. Вы можете запустить её на всех основных дистрибутивах Linux.
- Проверяет надежность любого компьютера.
- Восстанавливает файлы и исправляет «/etc/lilo.conf» и «/etc/fstab».
- Реорганизует разделы перед форматированием и разбиением дисков.
- Mondo поддерживает RAID, LVM, ext2, JFS, ext3, ReiserFS, VFAT, XFS и многие другие дополнительные файловые системы.
- Возможность создавать резервные копии системы, работающей в определенном формате.
Мы надеемся, что вы рассмотрели все приведенные инструменты для восстановления файлов Linux и сделали для себя правильный выбор. Эти утилиты могут избавить Вас от депрессии, вызванной потерей ваших ценных файлов.
Спасибо за уделенное время на прочтение статьи!
Если возникли вопросы, задавайте их в комментариях.
Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!