Как я могу написать программу, которая может восстановить файлы в FAT32 - PullRequest
2 голосов
/ 26 февраля 2009

Как мне написать программу, которая может восстанавливать файлы в FAT32?

Ответы [ 3 ]

4 голосов
/ 26 февраля 2009

Это довольно сложно, но FAT32 очень хорошо задокументировано:

Я написал инструмент для прямого доступа к FAT32, используя только те ресурсы:

Но я никогда не пытался восстановить файлы. Если вы успешно восстановите файл, это зависит от нескольких факторов:

  1. Файл должен все еще "существовать" физически на жестком диске
  2. Вы должны знать, где начинается файл
  3. Вы должны знать, что ищете (Заголовки ..)
3 голосов
/ 26 февраля 2009

Это зависит от того, что случилось с файлами, которые вы пытаетесь восстановить. Данные могут все еще находиться в разделе или могут быть перезаписаны. Есть много заранее написанных решений. Простой поиск в Google должен дать вам множество программ, которые могут попытаться восстановить данные, но не на 100% уверены, что вернуть их. Если вы действительно хотите восстановить их самостоятельно, вам нужно что-то написать в разделе чтения необработанных файлов и игнорировать отсутствующие маркеры файлов.

здесь - это программа (написанная Томасом Темпельманом. Этот парень великолепен), которая может вам помочь. Вы можете сделать копию раздела, игнорируя поврежденные биты, а затем работать с копией, чтобы ничего не испортить, и вы также сможете восстановить данные непосредственно с ним.

0 голосов
/ 05 мая 2013

Я думаю, что вы имеете в виду вырезание данных , то есть чтение физического устройства и восстановление ранее несвязанных файлов на основе некоторых знаний (например, когда вы найдете две буквы, PK, это весьма вероятно, чем почтовый индекс) архив следует, то же самое для JFIF для JPEG).

В этом случае я предлагаю вам изучить исходный код PhotoRec отличный (на мой взгляд, лучший) инструмент с открытым исходным кодом для вырезания данных.

...