Восстановление ntfs из raw без потери. Файловая система raw — что это? Что такое файловая система RAW

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

Устройства хранения данных – это очень уязвимое техоборудование. Повреждения происходят как в логическом разделе, так и в физическом. Большинство проблем связанные с жестким диском имеют фатальный исход и требуют замены оборудования, но существует и решаемые проблемы. Файловая система RAW относится к такому типу.

Файловая система raw — что это?

Как было ранее сказано, жесткий диск имеет файловую систему. Самые популярные – NTFS и FAT, которые могут применятся как для жесткого диска, так и для флеш накопителей.

Но что же представляет из себя файловая система RAW? Как бы противоречиво не звучало, но это отсутствие вообще какой-либо системы! Другими словами, это критическая ошибка существующей файловой системы и Windows ее не распознает.Возникает по причине неработоспособности файловой системы. В следствии техническая информация о носителе не отображается и доступ к файлам нарушен.

Рассмотрим признаки системы RAW
1. Доступ к устройству отказан, а если вышла из строя файловая система на компьютере или ноутбуке – Windows не загрузится, и вы увидите ошибку.
2. Если произошел такой казус со съемным накопителем, выскочит объявление, где будет сказано о необходимости форматирования.
3. Открываем «свойства» накопителя и в графе отображаемой информации, увидите «Тип файловой системы – RAW».

Почему на флешке файловая система RAW?
Что бы произошли такие кардинальные изменения с файловой системой достаточно одной причины из «джентельменского набора:

  • Неправильное выключение компьютера, скачок напряжения и отключения компьютера от сети при подключенной флешке! Такое обращение может повлиять и на файловую систему компьютера, вызвать фатальные проблемы с другими комплектующими.
  • Сбои работы операционной системы тоже могут вызвать такую проблему.
  • Самая распространенная причина – вирусное заражение. Все-таки не дураки придумали устанавливать антивирусные программы.
  • Физические повреждения накопителя, которые могут еще и вызвать потерю информации.
  • Процессы происходящие на уровне структуры файловой системы. Проблемы с загрузочным сектором, сбитые значения геометрии разделов и т.д.

Появление файловой системы RAW не фатальное в большинстве случаев, и возможно восстановление данных пользователя. Бывают исключения, связано это с физическими повреждениями несовместимыми с жизнью.
Рекомендуется обратиться в сервисный центр, где специалисты проведут необходимые операции для восстановления флешки и данных на ней. Это можно сделать и своими усилиями, но следует быть очень внимательным, чтобы не усугубить ситуацию и не потерять всю информацию.

Что бы вернуть файловую систему NTFS можно воспользоваться одной из этих программ:

  • Hard DISK Format Tool,
  • Recovery Tool,
  • Acronis Disk Director.
  • Онлайн сервис – RecoveryOnLine.
  • Переформатировать диск в NTFS средствами ms windows.

Если использование данных программ не помогло решить проблему, тогда во всемирном хранилище нужно узнать какой контроллер у накопителя и перепрошить его, но это очень трудная процедура и даже опытные пользователи могут не справится. Если даже такие манипуляции не помогли, тогда ваша флеш карта мертва.

Еще 3 полезных статьи:

Жесткий диск нормально работающего компьютерного устройства всегда является отформатированным в файловой системе NTFS или FAT. Если один из разделов HDD начинает работать некорректно, в свойствах диска появляется запись о преобразовании его формата в RAW. Это означает, что повреждена стандартная файловая система, и необходимо ее восстановление. На практике узнать о таком повреждении можно следующим образом. При обращении к диску последний не открывается, а на мониторе появляется сообщение о необходимости его форматирования.

Что означает такое сообщение:

  • Разрушена структура используемой файловой системы.
  • Отсутствует доступ к содержимому жесткого диска.
  • Запись неверных или поврежденных данных в загрузочный сектор диска.

При открытии свойств жесткого диска можно заметить, что раздел якобы не содержит никакой информации. В любом случае, необходимо произвести восстановление файловой системы, чтобы вернуть находящиеся на диске данные.

Из-за чего может произойти сбой?

Причинами появления подобного сбоя могут быть:

  • Воздействие со стороны проникшего на компьютер вируса.
  • Критический сбой операционной системы.
  • Некорректно работающая программа, заменяющая своими файлами оригинальные файлы системы. Сюда же можно отнести «кривые» драйверы.
  • Ошибки пользователя при завершении работы компьютера. Так часто повреждается файловая система на флеш-носителях.
  • Внешние факторы, в результате воздействия которых файловая система может быть повреждена. В частности, частые выключения электричества могут спровоцировать возникновение подобной проблемы.

Как можно восстановить файловую систему и информацию на жестком диске?

Несмотря на то, что операционная система предложит вам отформатировать поврежденный раздел, лучше не соглашаться с такими действиями. Впрочем, если вы поторопились, и дали команду на форматирование, еще не все потеряно. Правда, в этом случае, полностью восстановить содержимое данного раздела будет намного сложнее. Вначале следует провести восстановление всей имеющейся на неисправном разделе информации, а затем восстановить и саму файловую систему.

Восстановление данных и работоспособности логического раздела рекомендуется проводить при помощи программы RS Partition Recovery.

Данная программа позволяет:

  • Восстановить файлы с HDD, на котором была изменена файловая система. То есть, с RAW.
  • Восстановить данные с жесткого диска, который был вами отформатирован.
  • Получение максимально полной информации с логического раздела, который был удален.
  • Полное восстановление поврежденных разделов.
  • Копирование данных с поврежденных разделов на другие носители.
  • Программа отлично справляется с поставленными задачами на любом носителе.

Работа в программе RS Partition Recovery

Интерфейс программы достаточно прост. Основное меню разделено на три основные части. Слева можно увидеть перечень жестких дисков и логических разделов. По центру показано заполнение дисков информацией, а также данные о размерах всех дисков. В правом столбце появляются выбранные нами файлы. Программа отображает даже скрытые файлы, а также разделы, находящиеся под управлением других операционных систем.

Настала пора перейти к непосредственному восстановлению данных при помощи этой замечательной программы. Для этого достаточно нажать на левую верхнюю кнопку, обозначенную как «Мастер» («Wizard»). Перед пользователем откроется меню работы мастера. Будет произведен анализ выбранного диска.

Программа подразделяет все разделы на три категории: логические, съемные и жесткие диски. Для восстановления данных необходимо выбрать соответствующий раздел. Укажите его, а затем нажмите «Далее». Будет предложено выбрать тип анализа.

Выбор состоит из двух вариантов:

  • Быстрое сканирование.
  • Полный анализ.
  • 1 фильтр определит файлы системы NTFS. Большинство внутренних разделов работают именно в этом пространстве.
  • 2 фильтр обработает файлы, принадлежащие системе FAT. Такое форматирование больше характерно для съемных носителей, но встречаются такие файлы и на жестком диске компьютера. С системой FAT также работает ОС Linux.
  • Глубокий анализ работает независимо от файловой системы. В процессе своей работы программа просто находит на диске все файлы, которые там имелись когда-то или имеются в настоящий момент. Однако один только глубокий анализ использовать нежелательно, так как может быть утеряна часть информации. Лучше всего анализировать раздел с помощью всех трех фильтров.

При выборе быстрого сканирования часть файлов просто не будет найдена. Найдутся лишь целые файлы, без каких-либо признаков повреждений.

После завершения анализа программа сообщит, сколько папок и отдельных файлов найдено в данном разделе.

Чтобы просмотреть все найденные при анализе файлы, необходимо перейти в основное меню программы, нажав кнопку «Готово».

Захожу на свой рабочий диск…
Стоп. Точнее пытаюсь зайти на
свой рабочий диск… а диска Е:
нету:(. Вместо него пустое
неразмеченное пространство

Из воспоминаний Horrific
Xakep v.11.01(35) p.27

Даже с великими гуру случаются
неприятности такого рода. От них не
застрахован никто. Я попытаюсь рассказать,
как можно восстановить данные в подобной
ситуации. Ведь, скорее всего, данные никуда
не делись, как были, так и остались на диске.
Просто повреждена служебная область
раздела. Поэтому попытаемся разобраться,
как она устроена, а поняв, выработаем
алгоритм действий.

Информация о структуре NTFS довольно скудна,
и, вследствии закрытости основных
спецификаций на нее, получена так
называемым методом . Как и другие файловые системы, NTFS
делит поверхность диска на кластеры. Размер
кластеров имеет фиксированный размер,
выбираемый из интервала от 512 байт (1 сектор)
до 64 Кб (128 секторов). Обычно используется
размер кластера в 4 Кб (8 секторов). Каждый
элемент файловой системы, включая
служебные (которые принято называть
метафайлами), представляет из себя файл.
Метафайлы находятся в корневом каталоге NTFS
раздела и начинаются с символа имени "$",
Основной служебный файл — $MFT (Master File Table) —
список абсолютно всех файлов, хранящихся в
разделе, включая MFT. Вновь
отформатированный раздел NTFS выглядит
следующим образом:

Место под MFT файл выделяется сразу и с
большим запасом, обычно 12,5% (но может быть и
25%, 37,5% и 50%) от объема раздела. Оставшееся
место предназначено для хранения
содержимого файлов. Однако ОС, при
необходимости, может сокращать место,
выделенное для MFT файла, когда место под
содержимое файлов заполнено. Для этого, в
текущих версиях NTFS, оставшееся свободное
место, выделенное под MFT файл, уменьшается
вдвое, тем самым, увеличивая место,
отведенное для размещения содержимого
файлов. И когда ОС информирует о свободном
месте, то это сумма свободного места в обеих
частях раздела (зарезервированное под MFT
файл и выделенное под хранение содержимого
файлов). Но файлы не только добавляются в
раздел, но и удаляются из него. И в этом
случае возможно вновь увеличение места,
отводимого под MFT файл. При этом в служебной
области может оказаться содержимое файлов,
которое там и останется. MFT файл начнет
фрагментироваться, хотя это и не есть good.
Еще раз повторюсь, сказанное относится к
вновь отформатированному разделу. Когда я
при помощи программы Partition Magic добавил
неразмеченное пространство перед NTFS
разделом к NTFS разделу (F:), то MFT у меня
начинается с 1731201 кластера, хотя обычное
значение — 4.

Сам MFT поделен на записи фиксированного
размера по 1 Кб (2 сектора) каждая. Первые 24
записи — это служебные файлы, причем первым
в списке идет сам MFT. Ввиду особой важности
MFT файла, копия первых четырех записей
хранится в файле $MFTMirr где-то в районе
середины раздела. Также в последнем секторе
раздела (для Win’2k/XP) хранится резервная копия
boot сектора. Таким образом, для
восстановления раздела необходимо найти и
скопировать в начало раздела 4 первые
записи MFT из резервной копии и, возможно, сам
загрузочный сектор.

Для работы нам потребуется любой дисковый
редактор. Главное, чтоб он мог видеть все
пространство твоего диска. Можно
воспользоваться DiskEdit от дяди Нортона из
пакета Norton Utilities
2002 или штатным дисковым редактором Win’2k —
Disk Probe, для чего нужно с дистрибутива Windows из
папки Support\Tools установить дополнительные
инструменты, в том числе и Disk Probe. Также
потребуется программа PartitionInfo из пакета Partition
Magic . Для начала, выясним физические
границы требуемого NTFS раздела. Это можно
сделать при помощи программы PartitionInfo из
пакета Partition Magic.

В моем случае раздел NTFS начинается с 5060538
сектора диска. (также в нижнем окне доступна
информация в формате C:H:S) Теперь получим
информацию о номере последнего сектора и о
расположении MFT и ее копии, для чего
нажимаем кнопку Boot Record…

Итак, последний сектор раздела это 5060538 +
3341456 = 8401994 (первый сектор раздела + Total NTFS Sectors),
MFT начинается с 8х4=32 сектора (MFT start cluster * Sectors
per cluster), MFT Mirr — c 417682 х 4=1670728 сектора (MFT Mirror start
cluster * Sectors per cluster). Уточним размер отдельной
записи в MFT файле, для чего запустив
программу Partition Magic, выбрав требуемый раздел,
нажав правую кнопку мыши, выберем пункт
Properties В появившемся окне выберем
вкладку NTFS Info. Как и должно быть, размер
записи в MFT файле (File Record Size) составляет 1 Кб (2
сектора).

Запускаем дисковый редактор, например Disk
Probe, и выбираем пункты меню Volume>. В появившемся окне дважды щелкаем
мышкой по требуемому разделу (в моем случае
это G), нажимаем последовательно кнопки Set
Active и OK. Теперь переходим на сектор,
содержащий копию MFT. Для этого выбираем
пункт меню и в открывшемся
окне вводим номер сектора 1670728 и число
требуемых секторов (16) и нажимаем кнопку Read.
Теперь перепишем эти сектора по месту
расположения MFT, с 32 сектора. Для этого
выбираем пункт меню .
Отвечаем утвердительно на вопрос изменения
режима работы с Read Only на Read/Write, в
появившемся окне указываем сектор, с
которого надо осуществить запись (в нашем
случае это 32) и нажимаем кнопку Write it.
Подтверждаем свое желание еще раз и MFT
восстановлена.

Теперь необходимо скопировать на свое
место загрузочный сектор. Для этого
выбираем пункт меню После чего устанавливаем активным
требуемый физический диск. Это аналогично
тому, что мы осуществили для логического
диска. Теперь надо перейти на последний
сектор восстанавливаемого раздела. Через
меню вводим значение 8401994
после чего записываем это значение в сектор
5060538. Будьте особенно внимательны,
поскольку вы работаете с целым диском и не
ограничены границами поврежденного
раздела!

Осталось запустить утилиту chkdsk e: /f, которая
найдет и исправит просто огромное
количество ошибок, после чего поздравить
себя со спасенным разделом.

PS: Поскольку все операции потенциально
опасны, не поленись сделать резервную копию
разделов, находящихся на том же физическом
диске, что и восстанавливаемый раздел.

К сожалению, иногда можно встретить ситуацию, когда пользователь включает компьютер или ноутбук, а вместо какого-то логического раздела отображается диск, имеющий непонятный RAW-формат. Что это такое, попробуем выяснить. Заодно рассмотрим некоторые простейшие способы преобразования данного формата в нормальный вид.

RAW-формат: что это?

Если говорить о формате такого типа, нужно четко себе представлять, что, по сути, это даже не формат в обычном понимании. Это измененный тип файловой системы.

При доступе к такому разделу можно отметить два типа возникающих проблем. Во-первых, в файловом менеджере том может не отображаться вообще. А во-вторых, даже если он виден, то на нем либо нет файлов, либо система предлагает произвести немедленное форматирование, поскольку файловая система несовместима с операционной (RAW-формат HDD-дисков). Как исправить такую ситуацию? Нужно выбрать правильный подход, ведь форматирование раздела с уничтожением даже не отображаемых данных - не самый лучший вариант.

Почему меняются форматы дисков HDD?

Прежде чем приступать к решению проблемы непосредственно, необходимо сделать уточнение по поводу причин изменения структуры раздела. Вообще, среди специалистов принято считать, что RAW-формат HDD-дисков (как исправить его на читаемый, будет сказано позже), как следствие, может появляться, например, при воздействии некоторых вирусов, которые изменяют файловую систему целенаправленно, при резком отключении питания (электричества) в момент выполнения каких-либо операций, предполагающих непосредственный доступ к разделу, и т.д.

Собственно, после этого иногда диск может быть виден даже с присутствующими на нем папками и файлами, но произвести операции, скажем, по изменению метки тома, отформатировать его стандартными средствами, поменять размер и многое другое становится просто невозможным. Это происходит потому, что, грубо говоря, происходит изменение файловой системы или появляются неустранимые ошибки в таблице разделов. Тем не менее есть несколько решений по поводу того, что делать, если в системе появляется RAW-формат HDD-дисков. Как исправить такую ситуацию, рассмотрим подробнее.

Методика исправления

Теперь посмотрим на основные аспекты процессов исправления ситуации. Как уже, наверное, понятно, восстановление HDD в качестве основной задачи использует решение, позволяющее привести файловую систему раздела в такой вид, который бы воспринимался самой операционной системой (FAT32, NTFS, и т.д.). Заметьте, в большинстве случаев даже откат системы до предыдущего состояния не дает желаемого результата, так что заниматься этим не стоит. Это просто бесполезная трата времени.

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

Как сделать файлы видимыми и скопировать их в другое место?

Обработка формата RAW в этом случае производится при помощи весьма интересной утилиты под названием MiniTool Power Data Recovery (программа относится к классу условно бесплатного ПО).

После инсталляции в приложении необходимо запустить модуль Lost Partition Recovery, выбрать необходимый раздел и запустить полное сканирование (Full Scan). По завершении процесса в окне программы отобразится список всех доступных файлов. Остается отметить нужные данные и нажать кнопку сохранения (Save). Приложение предложит выбрать место, куда будут скопированы выбранные файлы. Укажите его и активируйте процесс. После этого можно заняться форматированием раздела. Если процедура недоступна, приступаем к следующему шагу.

Простейший способ восстановления формата средствами системы

Теперь остановимся на том, как конвертировать RAW в NTFS собственными средствами Windows (тем более что именно для такое решение подходит лучше всего).

Для начала следует запустить командную строку (cmd) из меню «Выполнить» (Win + R). Заметьте, восстановление HDD можно произвести только таким способом, стандартная проверка раздела в среде Windows результата не даст.

Теперь все сводится только к тому, чтобы прописать команду chkdsk «литера диска»: /f (например, в случае с диском D она будет выглядеть как chkdsk d: /f) - и нажать клавишу ввода. Остается дождаться завершения процесса, в ходе которого будет восстановлена файловая система, и перезагрузить систему.

Кстати сказать, такой способ именно в файловых системах, которые ранее имели структуру NTFS, прекрасно подходит и для системных дисков. Только при использовании этой методики загрузку компьютерного терминала или ноутбука нужно будет производить с загрузочного или восстановительного диска.

Исправление формата при помощи утилиты TestDisk

На данном этапе рассмотрим еще один аспект темы «RAW-формат HDD-дисков: как исправить». TestDisk (утилита для быстрого восстановления исходного формата) подойдет лучше всего. Самый главный плюс этого приложения состоит в том, что оно не требует установки. Поскольку выпускается в виде портативной версии. Минус - не имеет русифицированного интерфейса и работает в режиме наподобие DOS.

Итак, начнем восстановление HDD. На первом этапе после запуска программы нужно выбрать создание нового лог-файла (пункт Create) и нажать клавишу ввода. Затем стрелками выбирается нужный диск или раздел, после чего приложение автоматически определит тип таблицы раздела (его можно поменять вручную, но, думается, делать этого не стоит).

Далее нужно сначала использовать строку анализа (Analyse), а затем быстрый поиск (Quick Search). После каждого действия нажимается Enter. Когда потерянный раздел будет найден, следует использовать пункт сохранения структуры (Write). В противном случае, если нужный раздел в списке результатов поиска не отображается, следует задействовать глубокое сканирование (Deeper Search), после чего проделать только что описанные действия по сохранению структуры. Теперь, как и в предыдущем варианте, нужно просто перезагрузить компьютер или ноутбук. Проблема должна исчезнуть.

Использование программы Ontrack EasyRecovery

Перед нами еще одна программа, позволяющая преобразовать RAW-формат HDD-дисков. Как исправить его с помощью этой утилиты? Проще простого.

В принципе, приложение работает практически аналогично программе TestDisk, однако многих пользователей оно может привлечь тем, что имеет красивый и удобный интерфейс. Кстати сказать, многие эксперты называют этот программный продукт незаменимым инструментом, когда требуется восстанавливать дисковые разделы больших объемов. Единственный минус - программа платная, но, думается, для нашего человека это не проблема. На просторах Рунета для нее можно запросто найти и ключи активации, и патчи, и кей-генераторы.

Заключение

Что в итоге? На данный момент был рассмотрен RAW-формат HDD-дисков. Как исправить его на читаемый системой, думается, уже понятно. Что же касается того, что именно применить, зависит от конкретной ситуации. Допустим, если форматирование собственными средствами возможно, можно отобразить файлы и скопировать в другое место. Это, так сказать, чтобы уж совсем наверняка. Можно использовать и команду проверки и восстановления раздела до исходного состояния, которая предусмотрена в самой системе, но этот процесс при достаточно большом объеме тома может занять очень много времени.

С другой стороны, для упрощения пользовательских действий прекрасно подойдут и сторонние утилиты, описанные чуть выше. Другое дело, что некоторые юзеры не воспримут DOS-интерфейс приложения TestDisk. Впрочем, к нему легко привыкнуть. Более того, как уже говорилось, это портативная версия, а значит, ее всегда можно иметь под рукой и запускать с той же флешки. Если не нравится, пожалуйста, воспользуйтесь аналогичным приложением Ontrack EasyRecovery с графической оболочкой. Правда, некоторые могут возразить насчет вопроса о стоимости, но тут для себя стоит решить, что важнее: деньги или винчестер с хранящейся на нем информацией? К тому же среди всех подобных утилит эти две являются самыми мощными, а от бесплатного ПО иногда качественного результата не дождешься. Впрочем, выбор за самими пользователями.

Опишем процесс ручного восстановления данных в случае удаленных файлов или файлов из поврежденных разделов системы NTFS при работе в ОС Windows NT. Проблема заключается в том, что в составе этой ОС нет соответствующих программных средств. Программы же восстановления данных NTFS от сторонних производителей, к сожалению, не всегда используют все возможности восстановления. Ситуация усугубляется отсутствием полной документации по низкоуровневой структуре управляющих блоков NTFS.

Что же делать, если в один прекрасный момент обнаруживается, что компьютер с ОС Windows NT больше не загружается или некоторые логические разделы NTFS стали вдруг недоступны?

Сначала нужно уточнить, с чем связана неисправность: физическим повреждением диска, выходом из строя контроллера или разрушением файловой системы NTFS.

Проблемы с диском

Жесткие диски имеют ограниченный срок службы, обычно - несколько лет. Выход устройства из строя иногда можно определить по характерным щелчкам в момент инициализации. Диск может несколько раз щелкнуть и затихнуть, так и не раскрутившись. При инициализации BIOS сообщит вам об этой неисправности. В такой ситуации следует произвести ремонт жесткого диска. Если стоимость потерянной информации заметно превышает стоимость самого диска, следует обратиться к специалистам, что, впрочем, недешево.

Ремонт выполняется следующим образом. Если из строя вышла электроника, расположенная вне герметичного пространства диска, то заменяется или ремонтируется соответствующая плата. Для этого часто приходится разбирать другой диск точно такого же типа.

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

Поэтому если сломался жесткий диск с ценной информацией, приготовьтесь пожертвовать еще одним для ремонта и найдите третий для копирования восстановленных данных.

Если есть подозрение на неисправность контроллера диска, попробуйте его заменить. Проверьте также соединительный кабель.

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

Убедившись, что диск, контроллер и соединительный кабель исправны, не торопитесь использовать дискету NT Repair Disk, созданную при установке ОС, или запускать программу восстановления файловой системы chkdsk - результат может оказаться плачевным. Не пытайтесь также найти «волшебную» программу восстановления NTFS в комплекте Norton Utilities для Windows NT - пока ее там нет. Если информация, записанная на диске, имеет особую ценность, нужно вначале проанализировать состояние управляющих блоков файловой системы NTFS с помощью редактора диска.

Такая работа требует достаточно высокой квалификации. В частности, нужно разбираться в форматах управляющих блоков файловой системы. Если вы не в состоянии выполнить ее самостоятельно, лучше вызвать специалиста и не предпринимать попыток самому отремонтировать NTFS.

Чтобы проверить управляющие блоки, нужно подключить к компьютеру два диска: первый, исправный загрузочный, и второй - тот, информацию с которого необходимо восстановить.

Сначала подключается только первый диск и инсталлируется ОС Windows NT. Этот диск будет использован для сохранения файлов, восстановленных из разделов поврежденного. Далее устанавливается редактор Disk Probe, входящий в состав Windows NT Resource Kit. Хотя этот редактор далек от совершенства, именно он позволит выполнить всю работу по восстановлению потерянных файлов.

Убедившись, что с первым диском все в порядке, выключите компьютер и подключите к нему второй, поврежденный диск.

Определение геометрии логического устройства

Для успешного восстановления информации следует определить размер кластера и адрес загрузочного сектора. Первое значение можно получить из загрузочного сектора раздела NTFS (если, конечно, его содержимое сохранилось).

Запустите программу Disk Probe. Выберите в меню Drive позицию Physical Drive. В панели Open Physical Drive, появившейся на экране, укажите устройство PhysicalDrive1, дважды щелкнув левой клавишей мыши по соответствующей строке списка Available Physical Drives. Затем нажмите кнопку Set Active, оставив включенным переключатель Read Only, и закройте панель кнопкой OK.

В результате программа Disk Probe получит доступ на чтение поврежденного диска. После этого попытайтесь прочитать содержимое главной загрузочной записи диска, расположенной в первом секторе на нулевой дорожке нулевого цилиндра. Для этого в меню Sectors выберите строку Read. Появится панель Read Sector. В поле Starting Sector укажите номер первого сектора, равный нулю, а в поле Numbers of Sectors установите значение 1. Затем нажмите кнопку Read.

Программа считает в оперативную память содержимое первого сектора и покажет его в шестнадцатеричном виде. Выберите из меню View строку Partition Table для форматного просмотра таблицы разделов диска, а затем перейдите на нужный раздел с помощью кнопки Go. Если необходимо (когда восстанавливаются файлы из расширенного раздела), повторите эту процедуру несколько раз.

Добравшись до загрузочной записи нужного вам раздела, выберите из меню View строку NTFS Bootsector.

А что делать, если главная загрузочная запись или загрузочная запись нужного раздела уничтожены?

Эта ситуация тяжелая, но не фатальная. Подробную таблицу соответствия емкости логического устройства NTFS и числа кластеров можно найти в MSDN. Например, если емкость находится в интервале 1025 - 2048 Мбайт, размер кластера будет равен 4 секторам, а если в диапазоне от 8193 до 16 384 Мбайт - то в одном кластере будет 32 сектора. Заметим, однако, что, позаботившись заранее о возможности последующего восстановления диска в случае его повреждения, можно облегчить такую работу, когда в ней возникнет необходимость. Нужно определить и записать размер кластера сразу после установки ОС, пока загрузочный сектор NTFS еще цел.

В том случае, если размер кластера так и остался неизвестным, его придется определять косвенными способами или методом подбора.

Таблица MFT

Внутренняя структура файловой системы NTFS принципиально отличается от хорошо знакомой большинству FAT. Не вдаваясь в подробности, изложим лишь те сведения, которые необходимы для выполнения в ней восстановительных работ.

Файловая система FAT (и ее разновидность FAT32) хранит информацию о файлах в нескольких местах логического устройства. Дескриптор файла, содержащий его имя, размер, дату создания и номер первого выделенного для него кластера, находится в каталоге. Таблица размещения файлов File Allocation Table, от которой и произошло название файловой системы FAT, хранит связанный список всех кластеров, выделенных файлу. И наконец, сам файл может быть распылен по кластерам.

Такая организация в значительной мере затрудняет восстановление файлов в случае каких-либо сбоев. Особенно критичной является целостность таблицы FAT: если эта таблица пропала или ее содержимое оказалось частично разрушено, исчезает информация о кластерах, выделенных файлу. В результате файл можно с очень большим трудом собрать из отдельных кластеров, лишь зная его содержимое. К тому же эта работа требует очень много времени. Поэтому на практике исчезновение таблицы FAT и ее копии означает полную потерю файлов.

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

В файловой системе NTFS вся информация о файлах хранится в так называемой главной таблице файлов Master File Table (MFT). Записи таблицы MFT содержат наборы дескрипторов с такой информацией о файлах, как имя, даты создания и модификации, атрибуты безопасности, и, что самое главное, списки кластеров, выделенных файлам. Если файл имеет небольшой размер, то он может храниться непосредственно в записи таблицы MFT.

Следовательно, возможность восстановления файлов из поврежденных разделов NTFS во многом определяется целостностью таблицы MFT и ее копии.

Как найти таблицу MFT?

Найти таблицу MFT достаточно просто, если сохранился загрузочный сектор раздела NTFS. Нажмите кнопку Go около поля Clusters to MFT или Clusters to MFT mirr в панели, показанной на рис. 2. Для просмотра содержимого первого сектора таблицы выберите из меню View программы Disk Probe строку Bytes.

Обратите внимание на строку FILE, расположенную в самом начале сектора. С нее начинаются записи таблицы, описывающие файлы. Существуют еще записи для каталогов, элементов индекса и другие, которые мы не будем рассматривать.

Строка $.M.F.T. находится со смещением D2. Это имя системного файла, содержащего таблицу MFT, в кодировке Unicode. Таким образом, первая запись файла $MFT описывает сам этот файл. Просматривая таблицу, можно обнаружить записи для других системных файлов, таких как $MFTMirror, $LogFile, $Volume, $AttrDef и др.

Если загрузочный сектор разрушен, начало таблицы MFT нетрудно найти с помощью программы Disk Probe. Для этого выберите в меню Tools строку Search Sector, установите переключатели в положение, показанное на рис. 4, и, заполнив поле Enter characters to search for, нажмите кнопку Search. Следует запастись терпением, поскольку процесс поиска может отнять немало времени.

Заметим, что подобным образом можно найти в таблице MFT записи для тех файлов, которые нужно восстановить. Так как имена файлов хранятся в кодировке Unicode, при поиске следует установить переключатель в положение Unicode characters. Кроме того, необходимо включить режим поиска Exhaustive search и Ignore case.

Анализ записей MFT

К сожалению, программа Disk Probe не содержит никаких средств для форматного просмотра содержимого записей MFT. Более того, точный формат этой записи отсутствует в открытой документации Microsoft. Однако многое можно обнаружить в Internet, сделав запрос по ключевым словам «NTFS Documentation». Нам, например, удалось найти информацию, собранную разработчиками модулей для операционной системы Linux. Анализируя исходные тексты модуля для монтирования в Linux файловой системы NTFS, можно понять назначение отдельных полей записей MFT (авторы приносят благодарность Максиму Синеву за помощь в «расшифровке» записей MFT).

Запись MFT состоит из начального фрагмента фиксированного размера и набора атрибутов, имеющих в общем случае переменный размер. Для восстановления файлов нужно знать точный формат только атрибута данных. Что же касается других атрибутов, достаточно уметь определять их расположение и размер.

Первые четыре байта в записи, описывающей файл, образуют слово FILE. На рис. 3 они выделены красным цветом. Следующие два байта (выделенные синим цветом) - смещение так называемой области Fixup. В рассматриваемом случае значение смещения равно 002A (с учетом обратного порядка расположения байтов в слове). Здесь и далее будем пользоваться шестнадцатеричными числами.

Область Fixup используется в процессе обнаружения ошибок чтения или записи. Она состоит из слов размером два байта. Количество слов хранится в записи MFT со смещением 0006. На рис. 3 поле размера области Fixup выделено фиолетовым цветом. Там хранится значение 0003, следовательно, область Fixup начинается со смещения 002A и простирается до 002A+(2*0003)=002F.

Сразу за областью Fixup начинаются поля атрибутов. Смещение первого атрибута равно 0030.

Первые четыре байта области атрибутов определяют тип, а следующие четыре - размер в байтах. Например, вслед за областью Fixup со смещением 0030 следует атрибут с типом 10. На рис. 3 тип этого и следующего за ним атрибутов выделен красным цветом (размер атрибута выделен синим). Атрибут занимает 48 байт, следовательно, следующий атрибут (с типом 30) начнется со смещением 0078.

Таким образом можно выделить в записи MFT все атрибуты. В конце самого последнего записано значение FFFFFFFF - признак конца цепочки атрибутов.

Для восстановления файлов наибольший интерес представляют атрибуты типа 30 и 80. Первый из них хранит имя файла. По нему следует искать запись MFT, описывающую восстанавливаемый файл. Второй атрибут с типом 80 хранит список кластеров, выделенных файлу, или сам файл. Про него мы расскажем подробнее.

Как видно из рисунка, тип атрибута, равный 80, хранится в записи MFT со смещением 0160. Всего атрибут данных занимает D8 байт, так как именно это значение находится в четырехбайтовом поле со смещением 4 относительно начала атрибута.

Байт со смещением 8 относительно начала атрибута данных - это признак резидентного размещения файла. Если его значение равно 1, запись MFT хранит только список кластеров, выделенных файлу (как в описываемом случае), а если 0 - файл находится внутри самой записи MFT. Как правило, записи содержат только файлы небольших размеров.

Сначала рассмотрим случай нерезидентного размещения файла. При этом четыре байта со смещением 30 хранят длину файла, расположенного где-то на диске. В данном примере длина файла $MFT составляет B7B000 байт.

Для того чтобы определить точное расположение нерезидентного файла на диске, нужно проследить цепочку так называемых блоков виртуальных номеров кластеров Virtual Cluster Number (VCN), или просто блоков VCN. Показатель смещения начала этой цепочки хранится в двухбайтовом поле, имеющем смещение 20 байт относительно начала атрибута данных. В описываемом случае этот показатель равен 40, а смещение области блоков VCN относительно начала записи MFT равно 01A0. На рис. 5 эта область выделена жирной вертикальной линией зеленого цвета.

Анализ области блоков VCN

Файл, записанный в разделе NTFS, может быть сегментирован. Он состоит из одного или нескольких фрагментов, называемых экстентами. Размер и расположение каждого экстента описывается в блоке VCN. В зависимости от того, фрагментирован файл или нет, область VCN может содержать один блок или их набор. Блоки VCN имеют переменный размер, определяемый первым байтом.

Формат блока стоит показать на конкретном примере. Возьмем первый блок VCN, имеющий в рассматриваемом примере смещение 01A0 относительно начала записи MFT:

Тетрады первого байта со значением 31 определяют размеры двух полей блока VCN. Первое поле, имеющее длину один байт, хранит количество кластеров, выделенных экстенту файла. Второе поле размером три байта содержит номер первого кластера. В данном случае первому экстенту файла $MFT выделено 20 кластеров, а номер первого кластера для первого экстента равен 0286D9. Таким образом определяем размер и расположение первого экстента файла.

Второй блок VCN расположен сразу вслед за первым:

Для того чтобы определить первый кластер второго экстента, необходимо прибавить к адресу первого экстента смещение, указанное во втором блоке VCN (с учетом знака). В данном случае второй экстент размещен в кластере с номером 0286D9+21=286FA. Длина второго экстента составляет 0824 кластера.

Анализируя остальные блоки VCN, можно определить размеры и расположение всех экстентов файла. Список блоков VCN закрывается байтом с нулевым значением.

Резидентные файлы

Файлы небольшого размера размещаются непосредственно в записи MFT, описывающей этот файл, для сокращения времени доступа. Если в байте со смещением 8 относительно начала атрибута данных находится нулевое значение, то не нужно прослеживать цепочки блоков VCN. Это означает, что файл находится внутри атрибута данных.

При этом смещение резидентных данных, т. е. файла, записано в двухбайтовом слове со смещением 14 относительно начала атрибута данных, а размер - в двухбайтовом слове со смещением 10.

Приведем небольшой пример. Для иллюстрации формата записи MFT, содержащей резидентный атрибут данных, мы подготовили маленький файл с именем Small.txt, содержащий текстовую строку «This is a small text file.». Затем с помощью программы Disk Probe мы обнаружили запись таблицы MFT, созданную для этого файла (рис. 6).

Как видно из рис. 6, байты файла Small.txt (выделенные желтым цветом) находятся внутри записи MFT со смещением 18 относительно начала атрибута данных, а размер файла составляет 1A байт.

Как же восстановить файлы?

Теперь, вооружившись приведенными выше знаниями о внутренней структуре системных блоков NTFS, можно приступить к восстановлению файлов из поврежденного раздела этой файловой системы.

Когда известны имена файлов, подлежащих восстановлению, нужно найти соответствующие им записи в таблице MFT. Это можно сделать с помощью программы Disk Probe, воспользовавшись строкой Search Sector из меню Tools. Далее следует обнаружить в этой записи атрибут данных и определить, резидентный он или нет.

Если атрибут данных резидентный, то нужно сохранить сектор, содержащий запись MFT, в виде файла на исправном жестком диске или на дискете. Это можно сделать, используя строку Save as меню File программы Disk Probe. После этого следует вырезать нужную часть данных и сохранить результат в новом файле. Такую операцию нетрудно выполнить, например, в редакторе Norton Disk Editor для MS-DOS.

В случае нерезидентного атрибута работы будет намного больше.

Прослеживая цепочку блоков VCN, нужно определить расположение и размер экстентов восстанавливаемого файла. Далее с помощью приложения Disk Probe следует прочитать данные экстента, а затем сохранить их в файле на исправном диске. Не забудьте также, что в программе Disk Probe указывается количество секторов, которые нужно прочитать или записать, а в блоке VCN установлено количество кластеров, выделенных экстенту. Поэтому нужно выполнить соответствующий пересчет.

Восстановив все экстенты, объедините их в один файл (например, командой COPY с параметром /B). Затем установите правильную длину файла, полученную из поля со смещением 30 атрибута данных. В разделе FAT такая операция может быть выполнена с помощью все той же программы Norton Disk Editor.

К сожалению, на практике восстановление большого количества файлов требует много времени. Тяжелее всего дается ручная обработка цепочек блоков VCN, которые могут быть очень длинными. Приходится часами работать с калькулятором, переводя десятичные числа в шестнадцатеричные и обратно, а также производя различные арифметические действия, необходимые для определения размеров и расположения экстентов восстанавливаемых файлов. Поэтому обычно мы пользуемся небольшой самодельной программой NTFS Explorer, выполняющей наиболее трудоемкие операции в полуавтоматическом режиме.