Чтение онлайн

на главную

Жанры

Восстановление данных. Практическое руководство

Касперски Крис

Шрифт:

Рис. 7.4. Динамический анализ стратегии выделения дискового пространства, выполняемый при помощи Дискового Монитора Марка Руссиновича

Совет

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

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

Восстановление разделов NTFS после форматирования

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

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

Проще всего начать с форматирования. Для экспериментов нам потребуется утилита format.com, входящая в стандартный комплект поставки Windows NT/2000/XP, а также дисковый раздел, не содержащий никакой ценной информации.

Совет

Лучше всего проводить эксперименты на виртуальной машине — Virtual PC или VMWare, эмулирующей жесткий диск и ускоряющей процедуру форматирования в сотни раз (рис. 7.5). Ведь время — это не только деньги, но и бесцельно прожитые годы, проведенные за созерцанием индикатора прогресса.

Рис. 7.5. Форматирование виртуального диска в среде VMWare

"Живой" винчестер лучше не трогать, во всяком случае, до тех пор, пока вы не научитесь его восстанавливать. Кроме виртуальной машины, можно использовать привод ZIP (который, кстати говоря, намного надежнее оптических накопителей) и форматировать дискеты под NTFS, поскольку штатная утилита форматирования это позволяет. С обычными трехдюймовыми дискетами дело обстоит сложнее. По мнению Microsoft, их емкости недостаточно для размещения всех структур данных, хотя, простейший расчет показывает, что это утверждение не соответствует действительности, что утилита NTFSflp от Марка Руссиновича, собственно говоря, и демонстрирует. Статья "NTFS Support for Floppy Disks" (http://www.sysinternals.com/ntw2k/freeware/ntfsfloppy.shtml) подробно описывает, как обхитрить систему, заставив ее отформатировать гибкий диск под NTFS. Следует, правда, отметить, что для этого вам потребуется SoftIce.

Действия, выполняемые при форматировании

Форматирование диска — это сложная многоступенчатая операция, намного более сложная и намного более многоступенчатая, чем это может показаться на первый взгляд. Наверняка это мнение поддержит каждый программист, который писал в свое время нестандартные утилиты для форматирования дискет. Надо отметить, что в конце восьмидесятых — начале девяностых годов прошлого века такие утилиты писали практически все. Свои исследования мы начнем с изучения тома NTFS, непредумышленно переформатированного под NTFS. Техника восстановления томов NTFS, переформатированных под FAT16/32,

будет рассмотрена отдельно.

При выполнении команды

format X: /U /FS:NTFS
в файловой системе диска
X:
происходят следующие изменения (форматирование диска утилитой GUI, вызываемой из контекстного меню "проводника", осуществляется по аналогичной схеме):

1. Формируется загрузочный сектор NTFS.

2. Генерируется новый серийный номер тома, который затем записывается в загрузочный сектор по смещению

48h
байт от его начала.

3. Рассчитывается новая контрольная сумма загрузочного сектора, которая затем записывается по смещению

50h
от его начала (более подробная информация была приведена в гл. 5).

4. Создается новый файл

$MFT
, содержащий сведения обо всех файлах на диске. Как правило, он записывается поверх старого файла
$MFT
. Исключения из этого правила бывают, но они крайне редки. Обычно они происходят, если прежний файл
$MFT
был заблаговременно перемещен дефрагментатором, или если при переформатировании был назначен новый размер кластера. Во всех остальных случаях первые 24 файловых записи (FILE Record) погибают безвозвратно. Эти записи содержат непосредственно сам файл
$MFT
,
$MFTMirr
, корневой каталог,
/$LogFile
— файл транзакций,
/$BITMAP
— карту свободного пространства,
/$Secure
 — дескрипторы безопасности, а также ряд других служебных файлов.

5. Инициализируется файл

$MFT:$DATA
— назначаются новая длина файла (инициализируются
$MFT:$30.AllocatedSize
,
$MFT:$30.RealSize
,
$MFT:$80.AllocatedSize
,
$MFT:$80.RealSize
,
$MFT:$80.CompressionSize
,
$MFT:$80.InitializedSize
и
$MFT:$80.LastVCN
), дата и время создания и последней модификации (инициализируются
$MFT:$10.FileCreationTime
,
$MFT:$10.FileAlertedTime
,
$MFT:$10.FileReadTime
,
$MFT:$30.FileCreationTime
,
$MFT:$30.FileAlertedTime
,
$MFT:$30.MFTChangeTime
и
$MFT:$30.FileReadTime
) и, самое главное, создается новый список отрезков (data-runs), необратимо затирающий старый. Это значит, что собирать фрагментированный файл
$MFT
нам придется по частям.

6. Создается новый файл

/$MFT:$BITMAP
, отвечающий за занятость файловых записей в MFT. При этом все старые записи помечаются как свободные, однако их фактического удаления не происходит (поле
FileRecord.flags
остается нетронутым), благодаря чему процедура восстановления заметно упрощается. Чаще всего
$MFT:$BITMAP
располагается на том же самом месте, что и старый (т.е. между загрузочным сектором и MFT), забивая прежнее содержимое нулями, однако с помощью утилиты chkdsk его можно восстановить.

7. Создается новый файл

/$BITMAP
, отвечающий за распределение дискового пространства (свободные и занятые кластеры). Этот файл также записывается поверх прежнего файла
/$BITMAP
, который, тем не менее, может быть восстановлен с помощью chkdsk.

8. Создается новый файл журнала транзакций —

/$LogFile
, структура которого подробно описана в документации LINUX-NTFS Project.

9. В заголовок файловой записи

$MFT
заносится новый LSN (LogFile Sequence Number).

Поделиться:
Популярные книги

Медиум

Злобин Михаил
1. О чем молчат могилы
Фантастика:
фэнтези
7.90
рейтинг книги
Медиум

Жена на четверых

Кожина Ксения
Любовные романы:
любовно-фантастические романы
эро литература
5.60
рейтинг книги
Жена на четверых

Великий род

Сай Ярослав
3. Медорфенов
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Великий род

Дурная жена неверного дракона

Ганова Алиса
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Дурная жена неверного дракона

Черный маг императора

Герда Александр
1. Черный маг императора
Фантастика:
юмористическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Черный маг императора

Приручитель женщин-монстров. Том 5

Дорничев Дмитрий
5. Покемоны? Какие покемоны?
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Приручитель женщин-монстров. Том 5

Барон ненавидит правила

Ренгач Евгений
8. Закон сильного
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Барон ненавидит правила

Приручитель женщин-монстров. Том 14

Дорничев Дмитрий
14. Покемоны? Какие покемоны?
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Приручитель женщин-монстров. Том 14

Совершенный: Призрак

Vector
2. Совершенный
Фантастика:
боевая фантастика
рпг
5.00
рейтинг книги
Совершенный: Призрак

Покоривший СТЕНУ. Десятый этаж

Мантикор Артемис
3. Покоривший СТЕНУ
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Покоривший СТЕНУ. Десятый этаж

Книга пятая: Древний

Злобин Михаил
5. О чем молчат могилы
Фантастика:
фэнтези
городское фэнтези
мистика
7.68
рейтинг книги
Книга пятая: Древний

Последний попаданец

Зубов Константин
1. Последний попаданец
Фантастика:
фэнтези
попаданцы
рпг
5.00
рейтинг книги
Последний попаданец

Разведчик. Заброшенный в 43-й

Корчевский Юрий Григорьевич
Героическая фантастика
Фантастика:
боевая фантастика
попаданцы
альтернативная история
5.93
рейтинг книги
Разведчик. Заброшенный в 43-й

Её (мой) ребенок

Рам Янка
Любовные романы:
современные любовные романы
6.91
рейтинг книги
Её (мой) ребенок