• Полезные ссылки
• Резюме
В этой главе речь пойдет о восстановлении так называемых битых файлов. Файл может быть поврежден при его некорректном сохранении, особенно если вы пытались открыть, а затем сохранить файл, созданный кем-то в более новой версии прикладной программы. Такие файлы можно извлечь с поврежденного носителя. И хотя скопировать их удастся, при попытке открыть «спасенный» файл вы увидите сообщение об ошибке. После восстановления данных со случайно отформатированного диска среди найденных файлов наверняка окажется немало битых. Наконец, подобные файлы найдутся в результате анализа данных, сохраненных операционной системой при проверке и автоматическом исправлении ошибок жесткого диска, – такие файлы имеют расширение CHK.
Считается, что файл – именованная конечная и непрерывная последовательность байтов, несущая некую информацию. Для наших целей (восстановления данных) этого достаточно. В тех файлах, которые приходится восстанавливать на практике, такая последовательность обычно кодирует вполне осмысленную и завершенную информацию, например текст документа или растр (множество точек) изображения.
Напомним, что 1 байт = 8 бит, то есть каждый байт может принимать значения от 0 до 28 = 256 в десятичной (dec) или 28 = FF в шестнадцатеричной (hex) форме записи. Существуют программы, которые позволяют просматривать и изменять содержимое любого файла как простой последовательности байт. Логично называть их байтовыми или двоичными (бинарными) редакторами. Поскольку такие программы обычно показывают значения байтов в шестнадцатеричном виде, за ними закрепилось название «HEX-редакторы».
Если открыть файл в любом HEX-редакторе, мы увидим такое представление его содержимого. О применении HEX-редакторов для восстановления содержимого файла будет сказано в конце главы, они помогут понять структуру файла и то, в чем заключается суть ее повреждений.
Структура файлов в программе Hexplorer
Программа ICY Hexplorer – простой, но достаточно функциональный бесплатный редактор двоичных данных. Дистрибутив ее доступен на сайте разработчиков http://hexplorer.sourceforge.net.
Рабочая область окна разделена по вертикали. После открытия файла в левой части рабочей области отображается содержимое файла по байтам в виде их шестнадцатеричных значений (рис. 1.1). В правой части окна те же самые байты интерпретируются как ASCII-значения текстовых символов.
Рис. 1.1. Окно программы Hexplorer – открыт текстовый файл
При этом выделенный фрагмент одновременно подсвечивается в обеих половинах окна. Легко заметить, что означает каждый байт файла, если считать, что им закодирован какой-либо текстовый символ. При рассмотрении текстовых файлов такая интерпретация совершенно справедлива. Команды меню View (Вид) и Structures (Структуры) позволяют интерпретировать содержимое файла иначе, например как точечный рисунок, и просмотреть его в дочернем окне.
Понятие формата файла
Существует