Как правильно пользоваться программой MHDD? Тестирование жесткого диска (HDD) Mhdd описание

Disk boot failure, insert system disk and press enter. Надпись, от которой по спине начинается шествие легионов мурашек, каждая сама размером с жесткий диск. По закону подлости происходит это, когда ничто не предвещает беды. Но не спеши судорожно перезапускать систему - это игра в русскую рулетку. Лучше загрузиться с другого носителя и взяться за тщательную проверку. Поможет в этом испытанный инструмент - MHDD.

Введение

Если SMART показывает проблемы, чаще всего это означает одно: диск вот-вот начнет сыпаться, и повлиять может даже лишняя загрузка ОС. Следующее, что нужно понять, - это софтверные на нем «бэды» или хардварные. Если хардварных не так много, то диск еще можно попытаться вернуть к жизни.

Думаю, ты слышал о таких продуктах, как MHDD и Victoria. Они незаменимы для низкоуровневой работы с жестким диском и помогут тебе совершить великие подвиги в восстановлении и диагностике. О Victoria , теперь настало время разобраться со второй - архаичной, но по-прежнему мегаполезной утилитой.

MHDD - это небольшая, но мощная бесплатная программа, которая предназначена для работы с накопителями на самом низком уровне (насколько это возможно). Первая версия была выпущена Дмитрием Постриганем в 2000 году. Она могла сканировать поверхность накопителя с интерфейсом IDE в режиме CHS. Сейчас MHDD - это значительно больше, чем диагностика. С MHDD ты можешь делать все что угодно: диагностировать накопители, выполнять чтение и запись произвольных секторов, управлять системой SMART, парольной системой, системой управления шумовыми характеристиками, а также изменять размер накопителя.

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

Ох уж эти интерфейсы

Не каждый интерфейс может корректно распознаваться программой.

Интерфейс SATA. Есть вероятность, что диск не определится в MHDD. Причина может заключаться в режиме работы SATA-контроллера (IDE и AHCI) в BIOS. MHDD, увы, не поддерживает режим AHCI. Необходимо менять настройки BIOS. Хуже всего то, что нынче не все матплаты поддерживают этот режим. Выходом может стать только использование машины с подходящей материнкой или отказ от MHDD.

Интерфейс IDE. Для данного интерфейса характерно распределение устройств на шлейфе - master/slave. По умолчанию MHDD скрывает все устройства в режиме slave. Исправить это можно двумя способами. Первый - изменить расположение жесткого диска (переключить перемычку на master) и проверить соответствие настройки в BIOS. Второй способ - попробовать в MHDD сменить номер диска на 2 или 4. Ну и не забывай про конфигурационный файл mhdd.cfg , который лежит в папке CFG. В данном случае важен параметр PRIMARY_ENABLED=TRUE .

Интерфейс SCSI. Может не определиться драйвер SCSI-контроллера.

Интерфейс USB. Подключить диск через USB теоретически возможно с помощью дополнительного драйвера и настройки программы. Драйвер эмулирует режим работы через SCSI. Также необходимо отключить все лишние USB-накопители. Целевой диск должен быть подключен до загрузки MHDD. В config.sys потребуется прописать: device=X:\USBASPI.SYS /w /v , где X:\ - путь к диску.

Итак, я беру с полки один из сломанных дисков (я обычно клею на них этикетку broken) и сейчас попробую воскресить его, чтобы показать тебе, как это работает на практике. У меня на руках оказался винт WDC WD7500BPVX-60JC3T0 с винегретом вместо системы и всех файлов на нем.

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

Готовимся

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

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

Не убий

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

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

Чтобы диск, подключенный на первый канал, точно отображался, нужно подредактировать конфиг mhdd.cfg, который лежит в папке CFG.

PRIMARY_ENABLED=TRUE

Как я уже говорил, сканирование любого устройства возможно, только если оно определяется командами ID или EID (или нажатием F2).


Сканируем

Чтобы выполнить сканирование, набираем SCAN и жмем ENTER или используем F4. Появится меню, из которого можно изменить часть настроек. По умолчанию начальный сектор равен нулю (стартовый сектор). Конечный сектор равен максимально возможному (конец диска). Все деструктивные по отношению к пользовательским данным функции (Remap, Erase Delays) по умолчанию выключены.


Давай пройдемся по параметрам сканирования.

  • Start LBA - начальный сектор для сканирования, по дефолту 0, то есть начало диска.
  • End LBA - сектор завершения сканирования, по дефолту конец диска. Иногда удобнее сканировать не всю поверхность (особенно когда объем диска переваливает за несколько терабайт), а только рабочую область, где лежит ОС. К примеру, диск С равен 50 Гбайт, тогда конечная область будет равна 2 * 50 * 1024 * 1024 = 104 857 600-й сектор. Можно посчитать проще: (объем * 2) * 1 000 000 , итого 100 000 000.
  • Remap помечает сектор как сбойный в специальной служебной области, после чего диск к нему не обращается.
  • Timeout - время задержки на чтение сектора, после которого проверка переходит к следующему сектору.
  • Spindown after scan - остановить жесткий диск после сканирования.
  • Loop test/repair - проводить сканирование или проверку циклично.
  • Erase Delays - стирать сектора, в которых обнаружены задержки чтения.

Снова нажимаем F4 для запуска сканирования. MHDD сканирует накопители блоками. Для накопителей IDE/SATA один блок равен 255 секторам (130 560 байт).


Вот как работает сканирование:

  1. MHDD посылает команду VERIFY SECTORS с номером LBA (номер сектора) и номером секторов в качестве параметров.
  2. Накопитель поднимает флаг BUSY.
  3. MHDD запускает таймер.
  4. После того как накопитель выполнил команду, он опускает флаг BUSY.
  5. MHDD вычисляет затраченное накопителем время и выводит соответствующий блок на экран. Если встретилась ошибка (bad block), программа выводит букву, которая описывает ошибку.

MHDD повторяет шаги 1–5 до конечного сектора. Если нужен протокол сканирования, его всегда можно найти в файле log/mhdd.log. Во время сканирования ты можешь увидеть много прямоугольников разного цвета. Чтобы ты не сильно пугался, привожу выдержку из справки:

Наличие красных (>500 ms) блоков на полностью здоровом накопителе недопустимо. Если они есть, необходимо произвести стирание (erase) всей поверхности диска и, если это не помогло, избавиться от задержек, можно делать выводы, что данный накопитель перестал быть достаточно надежным. Буквенно-символьные блоки, например x , S и т.п., недопустимы: они говорят о наличии bad-блоков на поверхности.

Первое, что должно быть сделано, - это полная очистка поверхности командой erase. Если это не помогло, то scan с включенной опцией EraseWaits. Если bad-блоки так и не исчезли, следует запустить scan с включенной опцией Remap.

Восстанавливаем

Если сканирование выявило ошибки, первое, что необходимо сделать, - скопировать все данные с накопителя (если они, конечно, тебе нужны). В моем случае это было неактуально. Затем нужно полностью очистить поверхность при помощи команды ERASE , которая стирает каждый сектор на накопителе.


Накопитель пересчитает поля ECC для каждого сектора. Это помогает избавиться от так называемых soft-bad-блоков. Если стирание не помогло, запускаем сканирование с включенной опцией REMAP.


Если видишь, что каждый блок содержит ошибку, не пытайся стирать накопитель или сканировать с включенной опцией REMAP. Скорее всего, у накопителя повреждена служебная область, и это не может быть исправлено стандартными командами MHDD.

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

О чем сигнализируют индикаторы

  • BUSY - накопитель занят и на команды не реагирует;
  • WRFT - ошибка записи;
  • DREQ - накопитель жаждет обменяться данными с внешним миром;
  • ERR - возникла ошибка в результате какой-либо операции.

Когда загорается ERR, смотри в правую верхнюю часть экрана: там будет отображен тип последней ошибки:

  • AMNF - Address Mark Not Found - обращение к какому-то конкретному сектору не удалось. Скорее всего, означает, что сектор поврежден. Однако сразу после включения накопителя как раз наоборот - свидетельствует об отсутствии проблем и сообщает об успешном выполнении внутренней диагностики;
  • T0NF - Track 0 Not Found - не найден нулевой трек;
  • ABRT - Abort, команда отвергнута;
  • IDNF - Sector ID Not found;
  • UNCR - Uncorrectable Error, ошибка, не скорректированная кодом ECC. Скорее всего, в этом месте логический бэд-блок.

Вверху могут появляться еще два индикатора: PWD сигнализирует об установленном аппаратном пароле, HPА появляется в том случае, если размер накопителя был изменен с помощью команды HPA (обычно используется для скрытия бэд-блоков в конце диска).

Программа MHDD

MHDD – небольшая, но мощная бесплатная программа, предназначенная для работы с винчестерами на самом низком уровне (в обход BIOS). Она может диагностировать накопители, выполнять чтение и запись произвольных секторов, управлять системой SMART и многое другое.

Дистрибутив программы можно найти на сайте разработчика http://www.ihdd.ru . Можно скачать MHDD в виде образа компакт-диска (файл mhdd32verx.x.iso) или самораспаковывающегося образа дискеты. На том же сайте находится новая версия документации к программе. По умолчанию программа работает с винчестером, подключенным к вторичному (Secondary) каналу IDE в качестве первого устройства (Master). Она способна работать и с дисками SATA или SCSI. Функций у программы MHDD много. Вот лишь несколько действий.

Получение сведений о диске.

Сканирование поверхности диска.

Сохранение образа диска в файл.

Эти операции объединяет то, что они не связаны с записью данных на проверяемый диск, то есть являются неразрушающими. Делать что-либо еще с диском, с которого пользователь собирается восстанавливать информацию, не стоит. Основная задача – лишь оценить ситуацию, а не проверять диск, что является основным назначением программы MHDD.

1. Запишите программу на компакт-диск, а затем загрузите компьютер с него. На экране появится меню выбора накопителей (рис. 2.6). Выберите диск, который нужно исследовать, и введите его номер по списку. Можно вызвать это меню в любое время нажатием клавиш Shift+F3.

Рис. 2.6. Выбор диска

2. Указав диск (например, 3), нажмите клавишу Enter. Программа готова работать с этим винчестером. В верхней части экрана расположены регистры, или флаги. Любое IDE или SATA устройство должно выдать сообщение «DRIVE READY» и «DRIVE SEEK COMPLETE», то есть должны быть подсвечены флаги DRDY и DRSC. Флаг BUSY сигнализирует, что накопитель выполняет какую-либо операцию, например чтение или запись.

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

Все команды вводятся с клавиатуры, регистр роли не играет. Ввод любой команды завершается нажатием клавиши Enter. Для отмены или прерывания выполнения команды служит клавиша Esc.

3. Для получения информации о диске введите команду ID. Другая команда, EID, выводит более подробные сведения (рис. 2.7).

Рис. 2.7. Информация о диске

4. Для сканирования поверхности нажмите клавишу F4 или введите команду SCAN и нажмите клавишу Enter. Появится меню, в котором можно изменить некоторые настройки. По умолчанию номер начального сектора равен нулю (стартовый сектор). Номер конечного сектора равен максимально возможному (конец диска). Все функции, которые могут изменить или разрушить данные на диске (Remap, Erase Delays), по умолчанию выключены. Для начала сканирования вновь нажмите клавишу F4.

MHDD сканирует накопители блоками. Для накопителей IDE/SATA один блок равен 255 секторам (130 560 байт). По мере сканирования на экране строится карта блоков (рис. 2.8). Справа от нее приводится «легенда». Чем меньше промежуток времени доступа к блоку, тем лучше. Если при обращении к блоку возникают проблемы, то время увеличивается, если же возникает ошибка, то на карте отображается соответствующий символ.

Рис. 2.8. Сканирование поверхности

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

UNC – Uncorrectable Error, неисправимая ошибка;

ABRT – Abort, команда отвергнута;

IDNF – Sector ID Not found, идентификатор сектора не найден;

AMNF – Adress Mark Not Found, адресная метка не найдена;

T0NF – Track 0 Not Found, невозможно найти нулевую дорожку;

BBK – Bad BlocK, «плохой» блок без указания причины.

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

Регулярно повторяющиеся блоки с увеличенным временем доступа – результат позиционирования головок на очередной цилиндр. Это совершенно нормально.

Беспорядочно разбросанные блоки с разного рода дефектами – признак общей деградации привода. Пластины, подшипники или головки изношены. Возможно, винчестер был «побит» либо перегрет.

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

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

Полезная функция – контроль акустического шума (Acoustic Management). Шум, разумеется, не волнует пользователя. Однако уровень шума, издаваемого при перемещении головок, уменьшается путем снижения скорости их перемещения. Для неисправного винчестера это может оказаться мерой, способной облегчить режим его работы.

1. Введите команду AAM и нажмите клавишу Enter. Здесь можно увидеть возможные значения параметра, поддерживаемые этим винчестером.

2. Введите значение, соответствующее самой тихой (silent) работе, и нажмите клавишу Enter. Это немного поможет винчестеру, особенно блоку головок, на время дальнейших манипуляций.

На этих действиях диагностика заканчивается и начинается восстановление данных. Программа MHDD способна копировать отдельные сектора или целый диск в файл или в набор файлов. Дефектные нечитаемые сектора программа пропускает.

Команда TOF копирует указанный диапазон секторов (по умолчанию от нулевого до последнего сектора этого диска) в один файл. Размер файла образа не может превышать 2 Гбайт. Если пользователь решил создать образ диска размером более 2 Гбайт, то лучше использовать команду ATOF, так как она умеет автоматически делить образы на отдельные файлы.

1. Введите команду TOF и нажмите клавишу Enter. Появится приглашение Fast Disk Image Creator (рис. 2.9).

2. Введите номер начального сектора и нажмите клавишу Enter.

3. Введите номер последнего сектора и нажмите клавишу Enter.

Рис. 2.9. Создание образа командой TOF

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

5. Для начала копирования нажмите клавишу Enter.

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

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

Из книги Fedora 8 Руководство пользователя автора

4.4.2. Программа xsane Каких-либо действий по настройке сканера в Fedora 8 выполнять не нужно. Просто подключите сканер к компьютеру и запустите утилиту xsane (команда меню Приложения?Графика). Программа xsane сама определит сканер и после этого вы сможете начать сканирование, щелкнув

Из книги Linux для пользователя автора Костромин Виктор Алексеевич

4.7.1. Программа tar У читателя, привыкшего к архиваторам типа arj, которые собирают файлы в единый архив и сразу "сжимают" их, может возникнуть вопрос "А зачем использовать две программы?” Все дело в том, что tar расшифровывается как Tape ARchiver, он не сжимает данные, а лишь объединяет

Из книги Windows Vista автора Вавилов Сергей

10.2. Программа rpm Название этой программы (или команды) является аббревиатурой от Redhat Package Manager. Такая расшифровка дается в большинстве книг и руководств по Linux и кажется мне более правильной и логичной, хотя в главе 6 "The Official Red Hat Linux Reference Guide" говорится: "The RPM Package Manager (RPM), is an open

Из книги Linux-сервер своими руками автора Колисниченко Денис Николаевич

12.2.3 Программа gv Программа gv (или ghostview) разработана Иоганнесом Плассом (Johannes Plass) и предназначена для просмотра файлов формата PostScript и PDF (рис. 12.2).После ее запуска без указания имени файла основное окно программы будет пустым. Чтобы открыть какой-то файл, надо щелкнуть по

Из книги Самоучитель работы на компьютере автора Колисниченко Денис Николаевич

13.3.2 Программа ftp Программа ftp - это пользовательский интерфейс к стандартному протоколу передачи файлов по Интернету - File Transfer Protocol. Программа позволяет передавать файлы на удаленный компьютер и получать файлы с удаленного компьютера. Однако, введя команду ftp, вы

Из книги Программирование на языке Пролог для искусственного интеллекта автора Братко Иван

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

Из книги Язык программирования Си для персонального компьютера автора Бочков C. О.

2.6.2. Программа RPM Установка программного обеспечения в дистрибутивах Red Hat и Mandrake производится с помощью программы rpm. RPM (red hat package manager) - это менеджер пакетов Red Hat. Несмотря на то, что в названии присутствует «Red Hat», он полностью предназначен работать как открытая пакетная

Из книги Ubuntu 10. Краткое руководство пользователя автора Колисниченко Д. Н.

Программа Nero Express Лучшая программа для записи дисков Записывать диски средствами Windows неинтересно. Во-первых, скучно, а во-вторых, вам недоступны какие-либо настройки записи, вы даже не можете указать скорость, не говоря уже о выборе формата диска, методе записи. Вот

Из книги Язык Си - руководство для начинающих автора Прата Стивен

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

Из книги Анонимность и безопасность в Интернете. От «чайника» к пользователю автора Колисниченко Денис Николаевич

4.5.2. Программа 2 В соответствии с принятым в программе 1 представлением доски каждое решение имело видтак как ферзи расставлялись попросту в последовательных вертикалях. Никакая информация не была бы потеряна, если бы X-координаты были пропущены. Поэтому

Из книги автора

4.5.3. Программа 3 Наша третья программа для задачи о восьми ферзях опирается на следующие соображения. Каждый ферзь должен быть размещен на некотором поле, т.е. на некоторой вертикали, некоторой горизонтали, а также на пересечении каких-нибудь двух диагоналей. Для того,

Из книги автора

Исходная программа Исходная программа представляет собой совокупность следующих элементов: директив препроцессора, указаний компилятору, объявлений и определений. Директивы препроцессора специфицируют действия препроцессора по преобразованию текста программы

Из книги автора

9.3. Программа apt-get Предположим, у вас есть пакет package.deb. При его установке обнаружилось, что он требует наличия пакета lib.deb, который у вас не установлен. Что ж, вы находите в Интернете отсутствующий пакет, устанавливаете его способом, описанным в разд. 9.2 (то есть применяя

Из книги автора

20.3. Программа bum Ранее в Ubuntu имелась программа Службы (в программной группе Система | Администрирование), позволяющая включать/отключать системные сервисы. В современных версиях Ubuntu такой программы нет. Зато можно установить программу Boot-Up Manager, которая даже лучше, чем

Из книги автора

Программа Ниже приводится короткая программа, позволяющая узнавать номер кода символа даже в том случае, если на вашей машине не используется код ASCII. main() /* определяет номер кода символа */{ char ch; printf(" Введите, пожалуйста, символ. "); scanf(" %c", &ch); /* ввод

Из книги автора

П1.1. Программа AVZ Программа AVZ (Антивирус Зайцева) – очень полезная утилита, и не раз меня выручала еще со времен Windows XP. Тогда я использовал антивирус Касперского, который не умел работать в безопасном режиме. Получалось так – все, что пропустил основной антивирус, в

Перед подачей этой команды следует подать команду UNLOCK

RPM Изменить частоту вращения шпинделя (работа этой процедуры не гарантирована)

FF Записать секторы диска. Данные для записи берутся из указанного файла

AAM Настроить шумовые характеристики накопителя

MAKEBAD Генерация BAD-блоков. Работает не на всех накопителях

RANDOMBAD Генерация бед-блоков, разбрасывая их случайным образом по поверхности

INIT Сброс и рекалибровка

FDISK Сделать один раздел на весь диск. Изменяется только MBR

SMART / Управление системой SMART, а также просмотр атрибутов

STOP / Остановить шпиндель

I / Послать команды ID, затем INIT

ERASEВыборочное стирание секторов или полное стирание поверхности (низкоуровневое форматирование)

Для стирания напрямую, минуя BIOS, можно отключить диск в настройках BIOS, либо стирать с параметром /DISABLEBIOS .На скорость стирания данный параметр не влияет.

FASTERASE Стирание поверхности на максимальной скорости (используется парольная система)

TOF Чтение секторов диска в файл

В книге изложены методы восстановления данных с различных носителей информации – жестких дисков, массивов RAID, CD, DVD, карт флэш-памяти, карт фотоаппаратов и мобильных телефонов. Ремонт поврежденного оборудования рассматривается в издании только как один из аспектов всего процесса извлечения данных. Основная тема – извлечение данных, поврежденных из-за физических или логических нарушений в работе компьютерной системы либо неверных действий пользователя. В книге рассматривается восстановление случайно удаленных файлов, извлечение ценной информации с поломанных жестких дисков; описываются программы и методика восстановления данных с поврежденных массивов RAID, что критически важно для работы корпоративных компьютерных систем.

Книга не требует специальной подготовки читателя: простые пошаговые процедуры восстановления данных предваряются описанием принципов их хранения на различных носителях.

Книга:

MHDD – небольшая, но мощная бесплатная программа, предназначенная для работы с винчестерами на самом низком уровне (в обход BIOS). Она может диагностировать накопители, выполнять чтение и запись произвольных секторов, управлять системой SMART и многое другое.

Дистрибутив программы можно найти на сайте разработчика http://www.ihdd.ru . Можно скачать MHDD в виде образа компакт-диска (файл mhdd32verx.x.iso) или самораспаковывающегося образа дискеты. На том же сайте находится новая версия документации к программе. По умолчанию программа работает с винчестером, подключенным к вторичному (Secondary) каналу IDE в качестве первого устройства (Master). Она способна работать и с дисками SATA или SCSI. Функций у программы MHDD много. Вот лишь несколько действий.

Получение сведений о диске.

Сканирование поверхности диска.

Сохранение образа диска в файл.

Эти операции объединяет то, что они не связаны с записью данных на проверяемый диск, то есть являются неразрушающими. Делать что-либо еще с диском, с которого пользователь собирается восстанавливать информацию, не стоит. Основная задача – лишь оценить ситуацию, а не проверять диск, что является основным назначением программы MHDD.

1. Запишите программу на компакт-диск, а затем загрузите компьютер с него. На экране появится меню выбора накопителей (рис. 2.6). Выберите диск, который нужно исследовать, и введите его номер по списку. Можно вызвать это меню в любое время нажатием клавиш Shift+F3.


Рис. 2.6. Выбор диска

2. Указав диск (например, 3), нажмите клавишу Enter. Программа готова работать с этим винчестером. В верхней части экрана расположены регистры, или флаги. Любое IDE или SATA устройство должно выдать сообщение «DRIVE READY» и «DRIVE SEEK COMPLETE», то есть должны быть подсвечены флаги DRDY и DRSC. Флаг BUSY сигнализирует, что накопитель выполняет какую-либо операцию, например чтение или запись.

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

Все команды вводятся с клавиатуры, регистр роли не играет. Ввод любой команды завершается нажатием клавиши Enter. Для отмены или прерывания выполнения команды служит клавиша Esc.

3. Для получения информации о диске введите команду ID. Другая команда, EID, выводит более подробные сведения (рис. 2.7).


Рис. 2.7. Информация о диске

4. Для сканирования поверхности нажмите клавишу F4 или введите команду SCAN и нажмите клавишу Enter. Появится меню, в котором можно изменить некоторые настройки. По умолчанию номер начального сектора равен нулю (стартовый сектор). Номер конечного сектора равен максимально возможному (конец диска). Все функции, которые могут изменить или разрушить данные на диске (Remap, Erase Delays), по умолчанию выключены. Для начала сканирования вновь нажмите клавишу F4.

MHDD сканирует накопители блоками. Для накопителей IDE/SATA один блок равен 255 секторам (130 560 байт). По мере сканирования на экране строится карта блоков (рис. 2.8). Справа от нее приводится «легенда». Чем меньше промежуток времени доступа к блоку, тем лучше. Если при обращении к блоку возникают проблемы, то время увеличивается, если же возникает ошибка, то на карте отображается соответствующий символ.


Рис. 2.8. Сканирование поверхности

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

UNC – Uncorrectable Error, неисправимая ошибка;

ABRT – Abort, команда отвергнута;

IDNF – Sector ID Not found, идентификатор сектора не найден;

AMNF – Adress Mark Not Found, адресная метка не найдена;

T0NF – Track 0 Not Found, невозможно найти нулевую дорожку;

BBK – Bad BlocK, «плохой» блок без указания причины.

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

Регулярно повторяющиеся блоки с увеличенным временем доступа – результат позиционирования головок на очередной цилиндр. Это совершенно нормально.

Беспорядочно разбросанные блоки с разного рода дефектами – признак общей деградации привода. Пластины, подшипники или головки изношены. Возможно, винчестер был «побит» либо перегрет.

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

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

Полезная функция – контроль акустического шума (Acoustic Management). Шум, разумеется, не волнует пользователя. Однако уровень шума, издаваемого при перемещении головок, уменьшается путем снижения скорости их перемещения. Для неисправного винчестера это может оказаться мерой, способной облегчить режим его работы.

1. Введите команду AAM и нажмите клавишу Enter. Здесь можно увидеть возможные значения параметра, поддерживаемые этим винчестером.

2. Введите значение, соответствующее самой тихой (silent) работе, и нажмите клавишу Enter. Это немного поможет винчестеру, особенно блоку головок, на время дальнейших манипуляций.

На этих действиях диагностика заканчивается и начинается восстановление данных. Программа MHDD способна копировать отдельные сектора или целый диск в файл или в набор файлов. Дефектные нечитаемые сектора программа пропускает.

Команда TOF копирует указанный диапазон секторов (по умолчанию от нулевого до последнего сектора этого диска) в один файл. Размер файла образа не может превышать 2 Гбайт. Если пользователь решил создать образ диска размером более 2 Гбайт, то лучше использовать команду ATOF, так как она умеет автоматически делить образы на отдельные файлы.

1. Введите команду TOF и нажмите клавишу Enter. Появится приглашение Fast Disk Image Creator (рис. 2.9).

2. Введите номер начального сектора и нажмите клавишу Enter.

3. Введите номер последнего сектора и нажмите клавишу Enter.


Рис. 2.9. Создание образа командой TOF

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

5. Для начала копирования нажмите клавишу Enter.

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

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