Форматирование жестких дисков:Причины потери данных. Диагностика и тактика.
Главная загрузочная запись и таблица разделов Файловые системы Причины потери данных. Диагностика и тактика.
Форматирование жестких дисков
Выше при рассмотрении записи служебной информации на жесткий диск на заводе-изготовителе мы уже упоминали о низкоуровневом форматировании. Для современного винчестера это этап его производства, в результате которого секторы на жестком диске размечаются окончательно. То, что называют сейчас форматированием низкого уровня, сводится к простой записи нулей во все секторы, то есть к полному стиранию информации в области данных. Поэтому все, что делается с жестким диском после выхода его с завода, относится к форматированию высокого уровня. Оно включает в себя создание таблицы разделов и файловых систем.
Главная загрузочная запись и таблица разделов
В первом секторе на любом жестком диске находятся код простой программы (загрузчика) и последовательность информационных полей (таблица разделов). Вместе программа и поля называются главной загрузочной записью (Master Boot Record - MBR).
Главная загрузочная запись создается на новом диске программой FDISK. Оснастка Управление дисками Windows при создании раздела производит запись в MBR. Все программы наподобие Partition Magic или Acronis Disk Director тоже создают и редактируют главную загрузочную запись.
Просмотреть содержимое секторов винчестера, в том числе первого, на котором находится главная загрузочная запись, можно многими НЕХ-редакторами. В редакторе Hexplorer есть отдельная команда меню Disk (Диск). При ее вызове появляется окно, где следует указать номер начального сектора и количество секторов, которое программа должна прочитать. Существуют и специальные дисковые редакторы, например DiskEdit из пакета Norton Utilities (http://www.symantec.com) или DiskExplorer for NTFS (http://www.runtime.org). Основное отличие дисковых редакторов от обычных бинарных — наличие широкого набора шаблонов просмотра данных (можно сразу интерпретировать их не только как текст, но и как загрузочный сектор либо один из элементов файловой системы) и защиты от непреднамеренной записи на диск.
MBR занимает ровно 512 байтов — один сектор. Структура этой записи представлена в табл. 2.1.
Таблица 2.1. Структура MBR
Флаг активности указывает на то, что раздел активен. Значение OOh соответствует неактивному разделу, a Olh — активному. Из всех разделов на диске активным может быть лишь один.
Код типа раздела, находящийся по смещению 04h, — однобайтовый идентификатор. Если его значение равно 00h, то считается, что этого раздела не существует, и его содержимое игнорируется. Любое ненулевое значение означает, что в указанном пространстве находится раздел определенного типа. Так, например, идентификатор 06h указывает на раздел, отформатированный в FAT 16, OBh или ОСЬ — на раздел FAT32, a 07h — на раздел NTFS.
Если на диске нужно создать больше четырех разделов, то следует использовать специальный тип раздела с кодом 05h — расширенный раздел (Extended Partition).
Расширенный раздел отличается от всех остальных типов. Он описывает не сам раздел, а область пространства накопителя, в которой описаны разделы. В том секторе, который прописан в MBR как сектор начала расширенного раздела, фактически содержится еще одна загрузочная запись — Extended Boot Record (EBR) (табл. 2.3). Кода загрузчика в ней нет, есть только таблица разделов и сигнатура.
Таблица 2.3. Структура EBR
Указатель на раздел описывает обычный раздел (Partition), как показано в табл. 2.2. Если обычный раздел занимает не все пространство, то в таблице разделов появляется второй элемент, который вновь описывает оставшееся пространство как Extended Partition, то есть указатель на следующий EBR. В секторе, на который ссылается эта запись, точно так же описывается один раздел и, если осталось место, делается очередная запись об Extended Partition. Так продолжается до тех пор, пока пространство не будет разделено. Фактически все записи о расширенных разделах являются цепью (Extended Partition Chain), в которой от дискового пространства отрезаются кусочки, пока место не закончится. Ошибка в любом элементе этой цепи приведет к ее обрыву. Все разделы, записи о которых лежат после разрыва цепи, операционная система не сможет найти, а занимаемое этими расширенными разделами пространство она будет считать незанятым.
Файловые системы
Таблица разделов указывает на первые секторы каждого раздела. Для размещения файлов в разделе его следует отформатировать, то есть создать внутри раздела файловую систему. Основная запись файловой системы обычно начинается в первом секторе раздела. Структура записей файловой системы зависит от ее типа. Чаще всего встречаются файловые системы NTFS и FAT.
Файловая система NTFS сейчас используется на дисках 90 % домашних и офисных компьютеров. В основе ее лежит главная файловая таблица (Master File Table — MFT). Это база данных, или таблица, строки которой соответствуют файлам тома, а столбцы — атрибутам файлов. Файловая система NTFS образована девятью системными файлами, которые скрыты от просмотра обычными средствами. Эти файлы содержат таблицы занимаемых файлами кластеров и атрибутов файлов, список шагов транзакций (проведенных операций с файлами), корневой каталог и т. д. В секторе начальной загрузки указано положение сегментов данных MFT и зеркального файла MFT. В середине диска расположен дубликат сектора начальной загрузки.
Главная файловая таблица MFT — специальный и довольно большой файл. Первые 16 строк таблицы содержат служебную информацию о ней самой:
□ в начале файла MFT находится первая (основная) таблица файлов;
□ за основной таблицей файлов следует зеркальная запись (Mirror record), идентичная первой записи MFT. Если первая таблица MFT разрушена, то данные о размещении файлов берутся из зеркального файла MFT;
□ третья запись MFT ссылается на файл регистрации (log file).
Начиная с семнадцатой, записи главной файловой таблицы используются собственно файлами и папками, которые также рассматриваются как файлы NTFS. Благодаря дублированию записей MFT, а также наличию файла транзакций файловая система NTFS считается отказоустойчивой. Восстановление данных облегчается теми же механизмами.
Файловая система FAT еще недавно была основной на разделах жестких дисков. Сегодня в этой системе форматируются, как правило, flash-диски и карты памяти. Файловая система FAT (точнее, системы FAT12, FAT16 и FAT32) образована четырьмя структурами:
□ блок начальной загрузки (boot record), который находится в первом секторе раздела;
□ резервная таблица размещения файлов (backup FAT), которая используется при обнаружении повреждений в основной таблице FAT;
□ корневой каталог (root directory).
Структуры файловых систем создаются средствами операционной системы — утилитой форматирования разделов либо служебными программами. На диске эти структуры и записи, как и таблицу разделов, можно просматривать и изменять с помощью редакторов двоичных данных.
Причины потери данных
В электрике могут возникнуть всего две неисправности: потеря контакта там, где он должен быть, или появление контакта там, где его быть не должно. На диске истинных причин потери данных тоже всего две: случайное изменение содержимого ячейки и повреждение этой ячейки. Случаев изменения содержимого очень много. Они будут рассмотрены в порядке «от поверхности диска до операционной системы».
Неисправности платы электроники ведут к недоступности диска. При этом все данные могут быть в сохранности либо поврежденной может быть лишь часть информации. После замены или ремонта платы диск может использоваться снова. Рис. 2.4. Блок головок в парковочной зоне
Поломки механики внутри гермоблока: отрывы и сколы головок, разрушение подшипников и двигателей очень часто сопровождаются и повреждением пластин. В таком случае винчестер чаще всего не запускается и не определяется BIOS компьютера. Бывает, что блок головок «застревает» в парковочной зоне (рис. 2.4). Возможна ситуация, когда жесткий диск стартует, но из-за повреждения одной головки недоступна группа секторов. Восстановление начинается с ремонта диска в «чистой комнате», а результат зависит от степени повреждения поверхности пластин.
Повреждение пластин в общем виде проявляется как возникновение на диске BAD-блоков, то есть недоступных участков. Появление этой проблемы говорит о том, что возможности скрытого переназначения секторов уже исчерпаны. Если на поврежденный сектор приходится информация о структуре, то исчезает соответствующий уровень логической структуры диска, если файл — файл становится нечитаемым.
Случайное искажение содержимого сектора — довольно редкая ситуация. В цифровом мире случайностей почти не бывает. Это или проявление начинающегося «железного» дефекта, или результат работы вредоносной программы и в очень редких ситуациях — действительно случайная запись в момент перепадов напряжения или из-за пролетевшей космической частицы. Последнее — не шутка: воздействие космического излучения на оперативную память и жесткие диски давно изучено и статистически обосновано. Проявление дефектов или искажений содержимого секторов зависит от того, что записано в этих секторах.
Повреждение содержимого главной загрузочной записи (MBR) ведет к тому, что разделы либо не могут быть найдены операционной системой, либо их параметры определяются неверно. Самый простой случай — повреждение сигнатуры. Операционная система решает, что на месте MBR находится случайная информация, а сам диск вообще не разбит на разделы и никакой полезной информации не несет. Для восстановления структуры диска достаточно всего лишь исправить сигнатуру любым дисковым или НЕХ-редактором.
При искажении или разрушении кода загрузчика попытка загрузки операционной системы с такого диска заканчивается, как правило, «зависанием» компьютера. При этом если содержимое таблицы разделов не повреждено, вся логическая структура диска сохраняется и потери данных не происходит. Достаточно загрузить компьютер с другого диска, и вся информация на накопителе становится доступной. Традиционно для исправления кода загрузчика компьютер загружают со стандартной загрузочной дискеты MS-DOS, а затем запускают находящуюся на ней утилиту fdisk с ключом /mbr: fdisk /mbr. В качестве загрузочного может выступать лазерный диск или flash-диск, если материнская плата поддерживает загрузку с такого носителя.
Более тяжелый случай повреждения содержимого MBR — разрушение самого содержимого таблицы разделов. При этом теряется доступ к хранящейся в разделах информации. Таблица может быть повреждена полностью или частично. Бывают случаи, когда таблица разделов MBR цела, а разрушена запись о разделах в одном из звеньев цепи Extended Partition. Методика восстановления во всех случаях одинакова: ручное исправление таблиц разделов. Альтернатива — извлечение файлов с диска с помощью программ восстановления.
Диагностика и тактика
Повреждение файловой системы очень похоже на повреждение содержимого MBR. Различие состоит лишь в том, что раздел на диске виден, но операционная система сообщает, что он не отформатирован. Соответственно, недоступно и все содержимое раздела. В файловых системах NTFS и FAT возможно восстановление основных записей за счет дубликатов, это делается благодаря встроенным в операционную систему средствам проверки и исправления дисков. Тем не менее исправление ошибок файловой системы часто не решает проблему — часть файлов начинает рассматриваться как потерянные цепочки. Для восстановления данных правильнее пользоваться специальными программами восстановления.
Корректное удаление файлов и папок средствами операционной системы — самая простая ситуация. Именно с ней чаще всего сталкиваются пользователи, и она же очень их пугает. В операционной системе Windows прежде всего надо искать файл в Корзине. При удалении файла или папки в таблице файловой системы сначала лишь меняется одно из полей: в FAT первый байт имени файла изменяется на 0хЕ5, а в MFT атрибут по смещению 14h изменяется с 1 на 0. Кроме того, в NTFS изменяется запись о свободном месте на диске в файле BitMaP. Существует множество программ, специально предназначенных для восстановления удаленных объектов.
Цель диагностики — выяснить, почему не читается информация с диска и что именно пропало. Это одновременно и ответ на вопрос, что делать дальше. И диагностикой, и восстановлением данных с проблемного винчестера нельзя заниматься, загрузив компьютер с него же. Оперативная система Windows в процессе загрузки и работы неизбежно начнет записывать на загрузочный и системный диск данные: временные файлы, фрагменты файла подкачки, реестра, журнала и т. д. Для «затирания» того, что необходимо восстановить, может быть достаточно совсем небольших изменений на диске.
Есть два выхода. Если вы располагаете вторым компьютером, проще подключить проблемный винчестер к нему. Диск IDE целесообразно подключать на отдельный шлейф. Интерфейс SATA у винчестеров 3,5 и 2,5 одинаков, так что диск для ноутбука легко установится и в настольный компьютер. Чуть сложнее с «ноутбучными» винчестерами IDE — для их подключения понадобится переходник.
Если второго компьютера нет, нужно найти любой рабочий винчестер, подключить к компьютеру и установить на него операционную систему. Затем следует подключить восстанавливаемый диск.
ПРИМЕЧАНИЕ
В качестве операционной системы целесообразно выбрать Windows XP: во-первых, так экономится место на диске, во-вторых, с этой системой хорошо работают все утилиты восстановления. Операционная система Windows 98 не поддерживает разделы NTFS, а в Windows 7 пока не гарантируется нормальная работа всех программ, особенно их устаревших версий.
Ситуации со случайным удалением или форматированием сразу выведем за скобки. Диагностировать тут нечего: можно сразу запускать программу восстановления удаленных данных.
Если же причина и обстоятельства потери данных пока неясны, нужно оценить ситуацию. При этом важно обеспечить максимальную сохранность того, что еще осталось на диске.
1. Начинаем с осмотра винчестера. Видимые неисправности и повреждения на плате — повод заняться ее заменой.
2. Подключаем разъем питания и пробуем запустить диск. Если он не «стартует» — налицо аппаратная неисправность. Ее дальнейшая диагностика — одновременно и ремонт.
3. Если аппаратная проблема не выявлена или когда она устранена, подключаем винчестер к шлейфу SATA или IDE. Разумеется, делать это надо при выключенном питании! После этого оцениваем, как диск определяется в BIOS компьютера. Загружаем ОС и стараемся скопировать нужные данные. Если это удалось сделать с первого раза — отлично.
4. Если не удалось, целесообразно запустить диагностическую программу (MHDD или Victoria), осторожно и быстро оценить состояние секторов, посмотреть наличие разделов на диске. При обнаружении большого количества поврежденных или нечитаемых блоков есть два альтернативных пути:
1) той же программой сохранить посекторный образ диска или раздела в файл на другом физическом диске;
2) сразу запустить утилиту R-Studio, сделать с ее помощью копию диска или раздела.
5. Отключаем проблемный диск — достаточно его мучить!
6. Пробуем «вытащить» из полученного образа информацию программой восстановления данных, например R-Studio.
7. Если нечитаемых секторов на диске нет или их мало, можно извлечь информацию программой R-Studio или подобной непосредственно с диска.
Такова общая тактика. Теперь разберем детали.
Восстановление данных при аппаратных неисправностях
Отколотые элементы, «поджаренные» микросхемы и вздутые конденсаторы на плате электроники обычно заметны сразу. Точно так же видны гнутые ножки разъемов IDE (рис. 2.5) или колодки питания. Изредка бывают «задраны» контакты и в разъемах SATA. Можно попробовать выпрямить контакты пинцетом и тонкой отверткой, но поврежденную плату контроллера скорее всего придется заменить.
Рис. 2.5. Вдавленный контакт в разъеме IDE
Подключите винчестер к компьютеру (только разъем питания). Включите питание компьютера и прислушайтесь. В норме диск должен сначала раскрутиться, потом выполнить рекалибровку (сопровождается несколькими короткими щелчками и жужжанием) и через 1-2 секунды выйти на штатный режим работы. Если винчестер даже не раскручивается, причин может быть несколько:
□ повреждена плата электроники;
□ поврежден коммутатор блока магнитных головок;
□ заклинил вал шпинделя;
□ «залипли» головки.
Выяснить, почему не работает диск, довольно сложно, и самый простой способ диагностики обычно заключается в замене платы электроники. Это одновременно и диагностика, и ремонт. Если причина неисправности действительно в плате, то после ее замены винчестер нормально инициализируется. Если же проблема остается, значит, она скорее всего локализована внутри гермоблока.
Если накопитель раскручивается, но начинает стучать, это обычно указывает на неисправности внутри гермоблока и самостоятельно сделать что-либо вряд ли удастся. В редких случаях возможна неисправность платы электроники — прежде чем отправлять винчестер туда, где есть условия для вскрытия гермоблока, можно попробовать заменить плату.
Если прочитаная статья из нашей обширной энциклопедия компьютера - "Форматирование жестких дисков:Причины потери данных. Диагностика и тактика.", оказалась полезной или интересной, Вы можете поставить закладку в социальной сети или в своём блоге на данную страницу: Так же Вы можете задать вопрос по статье через форму обратной связи, в сообщение обязательно указывайте название или ссылку на статью!