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 выглядит следующим образом:
- Запуск утилиты от имени администратора (root) — требуется для доступа к физическому диску на низком уровне.
- Выбор носителя или файла-образа из списка устройств.
- Выбор раздела или области сканирования (весь диск, конкретный раздел, свободное пространство).
- Выбор типа файловой системы (если она не определяется автоматически).
- Выбор директории для сохранения восстановленных файлов (не должна находиться на том же носителе, что и сканируемый — иначе есть риск перезаписи).
- Запуск процесса сканирования. По завершении утилита выводит статистику о количестве найденных файлов.
По умолчанию 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 →
