Открыть сервис

PhotoRec — утилита восстановления данных

PhotoRec — свободная кроссплатформенная утилита с открытым исходным кодом для восстановления удалённых файлов и данных с повреждённых носителей информации. Программа разработана французским инженером Кристофом Гренье (Christophe Grenier) и распространяется под лицензией GNU General Public License (GPL v2+). PhotoRec входит в состав пакета утилит TestDisk, предназначенного для диагностики и восстановления разделов жёстких дисков.

Назначение и принцип работы

В отличие от многих коммерческих программ восстановления, PhotoRec не полагается на файловую систему носителя. Утилита работает методом «каравана» (carving): она сканирует нераспределённое пространство диска или образ носителя посекторно, анализируя сигнатуры (заголовки) известных типов файлов. При обнаружении характерной последовательности байтов программа пытается определить длину файла по структуре формата и сохраняет его в указанную пользователем директорию.

Такой подход позволяет восстанавливать данные даже в случаях, когда файловая таблица (FAT, NTFS, ext4) полностью уничтожена, отформатирована или перезаписана. PhotoRec не пытается восстановить исходные имена файлов, структуру каталогов или атрибуты — восстановленные файлы сохраняются в папки по типам (например, recup_dir.1), с порядковыми номерами в названиях.

Поддерживаемые форматы и носители

Утилита поддерживает восстановление более 480 различных форматов файлов, включая:

  • графические форматы: JPEG, PNG, GIF, TIFF, BMP, RAW-файлы фотоаппаратов (CR2, NEF, ARW, DNG);
  • документы: PDF, DOC/DOCX, XLS/XLSX, PPT/PPTX, ODT;
  • архивы: ZIP, RAR, 7z, GZIP, TAR;
  • аудио и видео: MP3, WAV, FLAC, AVI, MP4, MOV, MKV;
  • исполняемые файлы и библиотеки: EXE, DLL, ELF;
  • базы данных: SQLite, MySQL;
  • файлы виртуальных машин: VMDK, VDI.

PhotoRec работает со следующими типами носителей и файловых систем: FAT (все версии), NTFS, ext2/ext3/ext4, exFAT, HFS+, ReiserFS, XFS, JFS, UFS, а также с неразмеченными дисками и повреждёнными разделами. Поддерживается чтение данных с жёстких дисков, SSD-накопителей, USB-флешек, карт памяти (SD, CompactFlash, Memory Stick), CD/DVD и гибких дисков. Дополнительно утилита может работать с файлами-образами (DD, E01, ISO) и побайтовыми копиями разделов.

Платформы и интерфейс

PhotoRec является кроссплатформенным приложением и доступен для операционных систем Windows, Linux, macOS, FreeBSD, NetBSD, OpenBSD, Solaris. Существуют сборки для 32- и 64-разрядных архитектур.

Утилита имеет два варианта интерфейса:

  • интерактивный текстовый режим (curses) — основной способ работы, навигация осуществляется с помощью стрелок и клавиши Enter;
  • режим командной строки — позволяет запускать восстановление с заданными параметрами без диалогов, что полезно для автоматизации и пакетной обработки.

Графического интерфейса (GUI) у PhotoRec нет, однако сторонние разработчики создавали графические оболочки (например, QPhotoRec для Linux и Windows), которые используют ядро утилиты.

Порядок работы

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

  1. Запуск утилиты от имени администратора (root) — требуется для доступа к физическому диску на низком уровне.
  2. Выбор носителя или файла-образа из списка устройств.
  3. Выбор раздела или области сканирования (весь диск, конкретный раздел, свободное пространство).
  4. Выбор типа файловой системы (если она не определяется автоматически).
  5. Выбор директории для сохранения восстановленных файлов (не должна находиться на том же носителе, что и сканируемый — иначе есть риск перезаписи).
  6. Запуск процесса сканирования. По завершении утилита выводит статистику о количестве найденных файлов.

По умолчанию PhotoRec выполняет глубокое сканирование всей выбранной области, что может занимать значительное время в зависимости от объёма носителя и его скорости чтения. Для ускорения работы можно ограничить область поиска или отключить проверку второстепенных форматов.

Ограничения и особенности

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

  • Имена файлов не сохраняются. Утилита не восстанавливает оригинальные названия, даты создания и структуру каталогов. Файлы получают автоматические имена на основе типа и порядкового номера.
  • Фрагментированные файлы. Если файл был разбит на несколько фрагментов, разбросанных по диску, PhotoRec восстановит только первый фрагмент. Это особенно актуально для больших видеофайлов.
  • Перезаписанные данные. Восстановление невозможно, если секторы диска были перезаписаны новыми данными. Поэтому рекомендуется немедленно прекратить использование носителя после обнаружения потери данных.
  • Сжатые и зашифрованные данные. Файлы, хранящиеся в сжатом или зашифрованном виде (например, BitLocker, FileVault, LUKS), не могут быть восстановлены без знания ключей шифрования.
  • Специфические форматы. Для некоторых форматов (например, JPEG) утилита выполняет дополнительную проверку корректности структуры, что снижает количество ложных срабатываний, но может пропускать повреждённые файлы.

Применение

PhotoRec широко используется в следующих сценариях:

  • восстановление случайно удалённых фотографий и документов с карт памяти и флеш-накопителей;
  • извлечение данных с повреждённых или отформатированных носителей;
  • работа с образами дисков в рамках цифровой криминалистики и расследований;
  • восстановление файлов после сбоев файловой системы или вирусных атак;
  • судебная экспертиза и анализ цифровых доказательств (совместно с TestDisk).

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

Связь с TestDisk

PhotoRec разрабатывается и распространяется совместно с утилитой TestDisk. Обе программы созданы Кристофом Гренье при поддержке сообщества open-source разработчиков. TestDisk специализируется на восстановлении загрузочных записей и разделов, тогда как PhotoRec ориентирован на извлечение содержимого файлов. На практике эти инструменты часто используются в паре: сначала TestDisk восстанавливает структуру разделов, затем PhotoRec извлекает файлы из повреждённых областей.

См. также

  • TestDisk
  • R-Studio
  • Recuva
  • Foremost

Источники

  • Официальная документация проекта TestDisk & PhotoRec (cgsecurity.org)
  • Руководство пользователя PhotoRec (man-страницы)
  • Кристиан Каспер, «Восстановление данных: практическое руководство»

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →