Гид по технологиям

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

10 min read Linux Обновлено 31 Dec 2025
Восстановление удалённых файлов в Linux — руководство
Восстановление удалённых файлов в Linux — руководство

человек использует смартфон и ноутбук

Потеря данных рано или поздно случается с каждым пользователем ПК: сбой диска, случайное удаление или повреждение файловой системы. В Linux восстановление удалённых файлов зачастую проще и прозрачнее, чем в других ОС — доступно несколько бесплатных инструментов: TestDisk, PhotoRec, Foremost, extundelete и графические утилиты вроде R-Linux.

В этом руководстве подробно описаны подготовительные шаги, правила безопасности, пошаговые инструкции для каждого инструмента, сценарии использования, матрица рисков, чек-листы для разных ролей и критерии приёмки. Если нужно, следуйте пошагово в разделе «План восстановления».

Важные понятия одним предложением

  • Файловая система — способ хранения и организации файлов на диске. Примеры: ext4, NTFS, FAT32.
  • Сектор/кластер — минимальная единица хранения на диске; удалённый файл помечается как свободный, но данные остаются до перезаписи.
  • Образ диска (image) — побитовая копия раздела или диска, используемая для безопасного восстановления.

Что нужно знать перед началом

  • При обычном удалении через графический интерфейс файлы попадают в «Корзину» и легко восстанавливаются. Убедитесь сначала в Trash/Корзине.
  • При удалении через Shift+Del или rm файлы помечаются как удалённые и их данные остаются на диске до перезаписи. Поэтому немедленно прекратите запись на затронутый раздел.
  • Первое правило безопасности: не выполняйте восстановление на том же разделе, где были удалены файлы.
  • Рекомендуется создать побитовую копию раздела на другой диск и работать с этой копией.

жёсткий диск рядом с ноутбуком

Подготовка и базовые команды

Важно: команда и имена разделов в примерах нужно заменить на ваши реальные. Всегда проверяйте устройство с помощью lsblk или fdisk -l.

  1. Определите диски и разделы:
sudo lsblk -o NAME,SIZE,FSTYPE,MOUNTPOINT,LABEL
sudo fdisk -l
  1. Если раздел смонтирован — отмонтируйте его, чтобы избежать записи:
sudo umount /dev/sdb1
  1. Смонтируйте раздел только для чтения (если нужно доступаться к файлам без записи):
sudo mount -o ro /dev/sdb1 /media/read-only
  1. Создайте побитовую копию раздела на другой диск (лучше использовать ddrescue, но ниже — базовый пример dd):
# простая копия с помощью dd (медленно и без восстановления ошибок)
sudo dd if=/dev/sdb1 of=/path/to/external/backup-sdb1.img bs=4M status=progress

# альтернативно, используйте ddrescue для плохих секторов (обратите внимание, что ddrescue может быть не установлен по умолчанию)
sudo apt install gddrescue   # пакет называется gddrescue в Debian/Ubuntu
sudo ddrescue -f -n /dev/sdb1 /path/to/external/backup-sdb1.img /path/to/external/backup-sdb1.log

Примечание: путь /path/to/external должен указывать на диск с достаточным свободным местом и с файловой системой, поддерживающей файлы нужного размера (лучше ext4 или другой Unix-совместимый).

Общая стратегия выбора инструмента

  • Если нужно восстановить структуру раздела или сам раздел — используйте TestDisk.
  • Если нужно найти файлы по сигнатурам (когда файловая система сильно повреждена) — PhotoRec или Foremost.
  • Для ext3/ext4 специфичных удалений — extundelete.
  • Когда нужен графический интерфейс — R-Linux.

Ниже представлена наглядная схема выбора инструмента.

flowchart TD
  A[Начало: удалённые файлы] --> B{Файловая система}
  B -->|ext3/ext4| C{Файлы были перезаписаны?}
  B -->|Другая 'NTFS/FAT/RAW'| D[PhotoRec или Foremost]
  C -->|Нет| E[extundelete или TestDisk]
  C -->|Да или не уверен| D
  E --> F{Нужна GUI?}
  F -->|Да| G[R-Linux]
  F -->|Нет| H[TestDisk]
  D --> I[PhotoRec: потеря имён файлов]
  D --> J[Foremost: выбор расширений]
  I --> K[Проверить целостность и переименовать]
  J --> K

План восстановления — пошаговый SOP

  1. Оцените ситуацию: какая файловая система, какие файлы (документы, фото, база данных), есть ли резервные копии.
  2. Прекратите запись на проблемный раздел.
  3. Создайте побитовую копию образа раздела на другой диск (dd или ddrescue).
  4. Работайте с образом, а не с оригинальным разделом.
  5. Выберите инструмент по стратегии выше и выполните восстановление в отдельную папку на внешнем диске.
  6. После восстановления проверьте целостность и работоспособность файлов.

Критерии приёмки

  • Требования к успеху: восстановленны все критичные файлы (список файлов), файлы открываются корректно в приложениях.
  • Минимальное требование: хотя бы 90% важных файлов восстановлены и читаемы.
  • Для больших наборов данных: проведите выборочную проверку md5sum/sha256sum для соответствия ранее известным контрольным суммам.

Восстановление с помощью TestDisk

TestDisk — мощный инструмент для восстановления разделов и файлов. Он работает с MFT (для NTFS) и таблицами разделов. Он полезен, когда нужно восстановить удалённые файлы или потерянные разделы.

Установка (пример для популярных дистрибутивов):

# Ubuntu и Debian
sudo apt update
sudo apt install testdisk

# RHEL и CentOS
sudo yum install epel-release
sudo yum install testdisk

# Arch Linux
sudo pacman -S testdisk

Запуск:

sudo testdisk

Далее TestDisk запускается в интерактивном текстовом интерфейсе. Короткая инструкция:

  1. Выберите “Create” для создания лог-файла.
  2. Выберите устройство (например /dev/sdb) и нажмите Proceed.
  3. Выберите тип таблицы разделов (TestDisk обычно определит автоматически).
  4. Для восстановления файлов выберите Advanced, затем нужный раздел и Undelete.
  5. TestDisk покажет список удалённых файлов — пометьте те, которые хотите восстановить (нажмите “:” чтобы выделять по одному, “a” для всех).
  6. Нажмите C чтобы скопировать выбранные файлы и выберите папку назначения на другом диске.

Пример типичных проблем и советов:

  • Если TestDisk не видит устройство — проверьте права доступа и запустите с sudo.
  • Для NTFS TestDisk использует MFT и часто восстанавливает оригинальные имена файлов.

testdisk меню запуска в Linux список дисков в testdisk

Восстановление с помощью PhotoRec

PhotoRec ориентирован на восстановление по сигнатурам файлов (file signatures). Это делает его эффективным при повреждённой файловой системе, но он не сохраняет оригинальные имена файлов.

Запуск:

sudo photorec

Краткое руководство:

  1. Выберите устройство и нажмите Proceed.
  2. Выберите раздел и нажмите File Opt, чтобы ограничить типы файлов (по умолчанию все типов включены).
  3. Выберите Search и затем файловую систему: Other для не-ext3/ext4.
  4. Выберите Free Space, чтобы искать только свободные сектора (быстрее) или Whole для полного сканирования.
  5. Укажите каталог назначения на другом диске и подтвердите.

PhotoRec создаёт папки с именами recup_dir.1, recup_dir.2 и т. д., в которых находятся найденные файлы. Имена будут автоматически сгенерированы, обычно без оригинальных имён и временных меток.

Особенности и советы:

  • Если вам важно сохранить имена файлов — сначала попробуйте TestDisk или extundelete.
  • PhotoRec удобно использовать, когда структура файла повреждена или разделы отсутствуют.

photorec меню запуска

Восстановление с помощью Foremost

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

Установка:

# Ubuntu и Debian
sudo apt install foremost

# Fedora
sudo dnf install foremost

# Arch Linux
sudo pacman -S foremost

Пример использования для восстановления JPG изображений:

foremost -v -t jpg -i /dev/sdb1 -o ~/recovery/

Пояснения к ключам:

  • -v — verbose, подробные сообщения
  • -t jpg — искать только файлы типа JPG (можно перечислить через запятую)
  • -i — входной раздел или образ
  • -o — каталог для вывода

Foremost создаёт структуру каталогов с восстановленными файлами и логами. Он полезен, когда известен тип удалённых файлов.

восстановление с помощью foremost

Восстановление с помощью extundelete

extundelete предназначен для ext3/ext4 и умеет восстанавливать файлы, используя журнальные данные. Он эффективен при быстром реагировании (до перезаписи).

Установка:

# Ubuntu и Debian
sudo apt install extundelete

# RHEL и CentOS
sudo yum install extundelete

# Arch Linux
sudo yay -S extundelete

Примеры команд:

# восстановить конкретный файл (путь относительно корня раздела)
sudo extundelete --restore-file path/to/picture.jpg /dev/sdb1

# восстановить все доступные файлы
sudo extundelete --restore-all /dev/sdb1

# сохранить в указанную директорию (если поддерживается)
sudo extundelete -o /home/user/recovery --restore-all /dev/sdb1

По умолчанию extundelete записывает восстановленные файлы в каталог RECOVERED_FILES/ в текущем рабочем каталоге.

Ограничения:

  • Работает только для ext3/ext4.
  • Успех зависит от того, были ли перезаписаны данные и от активности файловой системы после удаления.

восстановление с помощью extundelete

Восстановление с помощью R-Linux

R-Linux — графическая утилита (бесплатна, но не open-source). Поддерживает ext2/ext3/ext4 и удобна, если вы предпочитаете GUI.

Скачайте бинарник с сайта R-Tools Technology и установите для вашего дистрибутива. После установки откройте программу, выберите диск и запустите сканирование через интерфейс. Р-Linux позволяет просматривать найденные файлы перед восстановлением.

Скачать: R-Linux

меню r-linux

Проверка целостности восстановленных файлов

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

  • Для изображений: откройте в просмотрщике изображений.
  • Для документов: откройте в соответствующем редакторе (LibreOffice, текстовый редактор).
  • Для бинарных файлов: используйте команду file и, при наличии эталонных checksum, сравните их:
file recovered-file.jpg
md5sum recovered-file.jpg
sha256sum recovered-file.jpg

Если у вас есть резервные контрольные суммы, сравните их с полученными.

Частые ошибки и как их избежать

  • Ошибка: попытка восстанавливать прямо на тот же раздел. Последствие: перезапись данных и потеря шансов. Решение: всегда указывать внешний диск как директорию назначения.
  • Ошибка: неправильный выбор диска. Решение: используйте lsblk и убедитесь, что у вас правильное устройство.
  • Ошибка: работать без образа раздела. Решение: сперва создать образ и тестировать инструменты на нём.

Матрица рисков и способы снижения

  • Риск перезаписи данных — Митигатор: остановить систему записи, отмонтировать раздел, работать с образом.
  • Риск повреждения исходного диска — Митигатор: клонировать диск через ddrescue и работать с клоном.
  • Риск неверного восстановления (частичные файлы) — Митигатор: проверить целостность и восстановить из резервной копии если есть.

Ролевые чек-листы

Пользователь (не админ):

  • Прекратить работу на компьютере.
  • Не открывать и не сохранять файлы на подозрительный раздел.
  • Обратиться к администратору или следовать инструкциям восстановления.

Системный администратор:

  • Проверить журналы и открыть терминал с sudo.
  • Создать образ раздела (ddrescue).
  • Подготовить внешний диск для хранения восстановленных файлов.
  • Выбрать подходящий инструмент и запустить процесс.

Инженер по восстановлению данных:

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

Когда один инструмент не помогает: альтернативный подход

  • Если TestDisk не нашёл файлы, попробуйте PhotoRec — он ищет по сигнатурам и обнаруживает данные даже при серьёзном повреждении.
  • Если PhotoRec нашёл файлы, но потеряны имена — используйте автоматические скрипты для переименования по типу и времени изменения.
  • Для критичных задач: обратитесь к профессиональным центрам восстановления данных. Это дорого, но иногда возвращает данные в случаях физической деградации носителя.

Советы по масштабированию для большого количества данных

  • При восстановлении больших массивов используйте ddrescue для создания образов и ведите лог (файл .log). Это позволяет возобновить процесс и избежать повторного чтения повреждённых секторов.
  • Делите процесс на этапы: сначала восстановите критичные файлы, затем менее важные.

Совместимость и заметки по версиям

  • TestDisk/PhotoRec входят в пакет testdisk и доступны в большинстве репозиториев; версии CLI стабильны и редко ломают совместимость.
  • extundelete работает только с ext3/ext4; не используйте на btrfs/xfs.
  • Foremost и PhotoRec ориентированы на сигнатуры и не зависят сильно от версии файловой системы.

Примеры тест-кейсов и критерии приёмки

  1. Восстановление одиночного файла JPG, удалённого по rm: файл должен быть найден TestDisk/PhotoRec и открываться в просмотрщике.
  2. Восстановление нескольких документов .docx: хотя бы 80% документов должны быть читаемы.
  3. Восстановление после повреждения раздела: PhotoRec должен вернуть максимальное количество файлов по сигнатурам.

Критерии приёмки: файлы открываются, их содержимое корректно, и восстановление не затронуло исходный раздел.

Шаблон отчёта о восстановлении (коротко)

  • Дата и время начала процесса
  • Описание проблемы
  • Идентификатор диска/раздела (lsblk)
  • Использованные утилиты и версии
  • Образ диска создан (да/нет) и путь
  • Список восстановленных ключевых файлов и их состояние
  • Рекомендации по дальнейшим действиям

Короткий словарь терминов

  • Образ — побитовая копия раздела или диска.
  • Сигнатура файла — уникальная последовательность байт, позволяющая определить начало файла.
  • MFT — мастер-файл таблицы в NTFS (информация о файлах).

Часто задаваемые вопросы

Q: Можно ли восстановить файл после форматирования раздела?
A: Частично. Если форматирование было «неполным» (быстрое), PhotoRec и Foremost могут найти данные по сигнатурам; если раздел был перезаписан или сделано полное форматирование с перезаписью, шанс ниже.

Q: Сколько времени занимает восстановление?
A: Зависит от размера раздела и скорости дисков; сканирование терабайта может занять часы.

Q: Сохранит ли PhotoRec оригинальные имена файлов?
A: Нет, PhotoRec восстанавливает данные по сигнатурам и присваивает сгенерированные имена.

Заключение

Восстановление удалённых файлов в Linux — процесс, который при правильном подходе часто приводит к успеху. Ключевые моменты: немедленно прекратите запись на раздел, создайте побитовую копию на другой диск, работайте с образом и выбирайте инструмент по ситуации. TestDisk и PhotoRec покрывают большинство сценариев; extundelete — лучший выбор для ext3/ext4 при быстром реагировании. Всегда храните резервные копии, чтобы минимизировать риски в будущем.

Важно: при сомнениях и особенно при работе с критичными данными привлекайте специалистов по восстановлению данных.

Дополнительно: краткий рекламный текст для сети (анонс, 100–200 слов)

Если вы случайно потеряли файлы на Linux, не паникуйте: большинство удалённых данных можно восстановить. В нашем полном руководстве вы найдёте безопасный порядок действий — от создания образа диска до проверки целостности восстановленных файлов — и пошаговые инструкции для TestDisk, PhotoRec, Foremost и extundelete. Следуйте чек-листам для пользователей и системных администраторов, используйте decision tree для выбора инструмента и избегайте частых ошибок. Храните резервные копии и действуйте быстро: правильные шаги увеличивают шанс успешного восстановления.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Планирование питания с Eat This Much
Питание

Планирование питания с Eat This Much

Как предотвратить атаки Remote Access Trojan
Кибербезопасность

Как предотвратить атаки Remote Access Trojan

man в Linux: как читать и выходить
Linux

man в Linux: как читать и выходить

Как изменить звук уведомлений в iOS 17.2
iOS

Как изменить звук уведомлений в iOS 17.2

Обновление watchOS на Apple Watch — инструкция
Гайды

Обновление watchOS на Apple Watch — инструкция

Серийный номер ПК в Linux — как найти
Linux

Серийный номер ПК в Linux — как найти