Как исправить бэды на жестком диске. Сбойные сектора или бэд блоки Бэд блоки на жестком диске как исправить

В статье много информации не только о программе Victoria, но и о программе DMDE, при помощи которой мы и будем создавать посекторный образ неисправного жёсткого диска, это тоже нужно сделать правильно, дабы пользовательские данные не пропали.

Тест жёсткого диска в программе Victoria и как исправить сбойные сектора (бэд-блоки).

Друзья, если Вы читаете эти строки, значит у Вас какая-то проблема с жёстким диском,а как выбрать жёсткий диск обсуждалось ранее в статье .

Когда мы задумываемся о том, что с нашим жёстким диском происходит что-то не то?

  1. С жёсткого диска невозможно скопировать нужную информацию на другой накопитель, при копировании операционная система зависает и спасает только перезагрузка.
  2. Windows может неожиданно зависнуть на любом этапе работы.
  3. Невозможно переустановить операционную систему, в процессе установки происходит зависание на распаковке файлов Windows или установщик сообщает об ошибке "Невозможно продолжить установку...", или Windows очень долго устанавливается, например несколько часов.
  4. При включении компьютера сразу запускается утилита Chkdsk и проверяет разделы жёсткого диска на ошибки.
  5. Жёсткий диск издаёт посторонние звуки (щелчки, скрип) и периодически не определяется в BIOS.
  6. Скачать программу Victoria для работы непосредственно в операционной системе Windows XP, 7, 8, 10
    Идём на официальный сайт программы и выбираем версию для Windows . Советую Вам скачать версию Victoria 4.3 beta, так как Victoria 4.46 beta не всегда корректно работает.

Victoria для работы с загрузочного диска

Идём на официальный сайт программы и выбираем .

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

Итак, поехали, во первых, в программе Виктория точно установим номера сбойных секторов (бэд-блоков), затем сделаем посекторную копию жёсткого диска и этим спасём пользовательские данные, а дальше произведём скрытие сбойных секторов бэд-блоков (рэмап) в программе Victoria. Также узнаем как делать "Запись по всей поляне" (тест Erase), то есть при обнаружении сбойного сектора переписывать весь блок (256 секторов) жёсткого диска нулями.

Для примера возьмём реальный жёсткий диск имеющий сбойные сектора:

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

Данный винчестер WDC WD5000AAKS-00A7B2 (объём 500 ГБ) реально неисправен,

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

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

Запуск Victoria:

Запускаем программу Victoria от имени администратора. Соглашаемся со всеми предупреждениями о работе в 64-битной системе.

Выбираем начальную вкладку Standard. Если у нас несколько жёстких дисков, в правой части окна выделяем левой мышью нужный жёсткий диск, в нашем случае WDC WD5000AAKS-00A7B2

и переходим на вкладку SMART,

жмем кнопку Get SMART, справа от кнопки засветится сообщение GOOD и откроется S.M.A.R.T. выбранного нами жёсткого диска.

S.M.A.R.T. этого винта оказался не самый хороший. Почему? Читайте нашу первую статью из цикла о программе Виктория. Здесь скажу лишь, что целых четыре атрибута S.M.A.R.T. горят красным, в том числе и самый важный параметр, атрибут

5 Reallocated Sector Count - (remap), обозначающий число переназначенных секторов это значит запасные сектора на резервных дорожках заканчиваются и скоро сбойные сектора переназначать будет нечем.

Переходите на вкладку Tests .

Тест поверхности жёсткого диска в программе Victoria

В правой части окна программы отметьте пункт Ignor и пункт read, затем нажмите Start . Запустится простой тест поверхности жёсткого диска без исправления ошибок. Этот тест не принесёт никаких плохих или хороших воздействий на Ваш винчестер, но когда тест закончится, мы узнаем в каком состоянии находится наш жёсткий диск.

Начинается сканирование поверхности жёсткого диска и через некоторое время обнаруживаются сбойные сектора. Через 40 минут Victoria выдаёт нам такой результат:

Очень много хороших секторов с хорошей задержкой чтения не более 5 ms - 3815267

Также имеются сектора с нехорошей задержкой чтения 200 ms

Секторов с неудовлетворительной задержкой чтения более 600 ms (кандидаты в бэд-блоки) нет совсем, но...

Что совсем плохо, присутствуют полноценные сбойные сектора (бэд-блоки), информацию из которых прочитать совсем не удалось - 13

13 сбойных секторов (бэд-блоков), все они начинаются в области 6630400, а заканчиваются на 980000000, то есть рассыпаны по всему жёсткому диску. Номера бэд-блоков нужно записать. Друзья, вполне возможно все наши проблемы с жёстким диском могут быть из-за этих 13 бэдов и от них нужно избавиться, но сначала сделаем посекторный образ больного винта.

Жёсткий диск пострадавшего WDC WD5000AAKS-00A7B2 (объём 500 ГБ) был разделён на два раздела: диск D: с операционной системой объём 120 ГБ и диск E: с данными объём 345 ГБ.

Перед работой с программой Victoria обезопасим себя и сделаем полный образ раздела диск E: объём 345 ГБ и данные будем вытаскивать именно с образа. Образ сделаем в другой программе DMDE и расположим его на другом физическом диске SAMSUNG HD403LJ (объём 400 ГБ) я покажу Вам как это сделать.

Управление дисками моего компьютера

Важные данные находятся на Новом томе (E:) объём 347 ГБ жёсткого диска WDC WD5000AAKS (общий объём 500 ГБ), значит создавать будем образ раздела (E:)

Посекторный образ раздела (E:) создадим на жёстком диске SAMSUNG HD403LJ (объём 400 ГБ), на нём всего один раздел без данных Новый том (F:)

Третий физический диск в системе, это твердотельный накопитель SSD (объём 120 ГБ) диск (C:), на нём находится наша работающая операционная система Windows 8.1, в которой мы сейчас и находимся.

Создание посекторного образа всего жёсткого диска или нужного раздела в программе DMDE

Также DMDE является очень хорошим инструментом для создания посекторных копий неисправного жёсткого диска.

Идём на сайт программы DMDE http://dmde.ru/download.html и скачиваем программу, жмём GUI для Windows.

DMDE скачивается в архиве, разархивируем его и запускаем файл dmde.exe .

Затем выбираем язык Русский.

Принимаем условия Лицензионного соглашения. В начальном окне программы нам нужно для создания образа выбрать или Физическое устройство (то есть полностью жёсткий диск) или раздел с данными.

Нужен нам только том E: , поэтому отмечаем левой мышью наш жёсткий диск WDC WD5000AAKS, затем отмечаем пункт Логические диски

и раздел (E:), затем жмём ОК.

Меню. Создать образ/клон...

Место для записи, жмём Диск.

Новый том F: и ОК. Нужно чтобы раздел, на котором будет создан посекторный образ неисправного жёсткого диска (или раздела с нечитаемыми данными) был по объёму не меньше этого диска.

На новом томе F: удалятся все данные, соглашаемся Да.

Начинается создание посекторной копии раздела (E:) больного жёсткого диска WDC WD5000AAKS на новом томе (F:) другого здорового жёсткого диска диска SAMSUNG HD403LJ, которое продолжается 6 часов (с особо "бэдастых" винтов образ снимается несколько суток) и наглухо зависает на 83 процентах, прождав пару часов я нажал на кнопку Прервать!

Друзья, если прервать создание образа посекторного раздела под самый конец (всё-таки 83%) то нас ждёт два варианта, как говаривал Суворов - "либо грудь в крестах, либо голова в кустах".

После прерывания операции заходим на Новый том F: и смотрим, есть ли на нём какие-либо данные и...они есть, всё основное, что нам было нужно программе DMDE удалось перенести на дик F: , практически все данные читаются без ошибок. Значит случай у нас не сложный и

бэды в основном софтовые

Но в некоторых случаях не всё так будет радужно и при попытке войти на раздел с посекторной копией нас будет ждать вот эта ошибка: Нет доступа к F:\ . Файл или папка повреждены. Чтение невозможно.

Нет доступа к F:\. Файловая система не распознана. Убедитесь, что все требуемые системные драйвера загружены и том не повреждён.

Но и в этом случае сдаваться мы не будем и поступим так.

Что делать, если создание посекторного образа пойдёт с ошибками

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

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

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

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

Игнорировать всё и все подобные ошибки будут пропущены, а можно нажать кнопку

Параметры и соответствующе настроить программу DMDE для такого тяжёлого случая. Нажмите в этом окне кнопку Параметры.

В параметрах нужно быть внимательным, так как настроить здесь можно много чего. Например заставить DMDE создавать посекторный образ с жёсткого диска не с начала, а с конца, для этого нужно отметить пункт

Обратный ход, иногда это приносит результат.

И опять нажмите Параметры.

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

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

Число повторов авто при ошибке CRC - 0

Число авто повторов, если сектор не найден - 0

Заполнять плохие секторы hex

Затем ОК и ОК, начинается создание посекторного образа.

Щёлкните левой мышью для увеличения изображения

Также работоспособным показал себя такой вариант настроек.

Пропускать ошибки ввода-вывода - Всегда

Не ждать, если устройство не готово - Всегда

Число повторов при ошибке CRC - 0

Вообще я Вам посоветую изучить мануал к программе DMDE http://dmde.ru/manual.html или http://dmde.ru/docs/DMDE-manual-ru.pdf , так же можете дождаться нашей статьи о создании посекторного образа неисправного жёсткого диска различными программами, в ней мы рассмотрим даже создание загрузочной флешки с программой DMDE.

  • Если DMDE Вам не поможет, тогда можно попробовать другие программы, например Acronis True Image . Конечно существуют ещё способы с помощью которых можно сделать посекторный образ сбойного винта, например загрузиться с какой-нибудь операционной системы, основанной на Linux, к примеру Ubuntu, но сам процесс описывать здесь не буду и лучше напишу отдельную статью. Также под Линуксом можно запустить утилиту safecopy.
  • Что делать, если всё же посекторную копию жёсткого диска Вам сделать не удастся, выбирать Вам. Можете обратиться в хороший и зарекомендовавший себя сервис по восстановлению данных и посекторную копию с Вашего жёсткого диска снимут на специальном дорогостоящем оборудовании специалисты, например с помощью того же комплекса PC−3000. Если Вам не жалко Ваши данные, то можете рискнуть и запустить в программе Victoria алгоритмы избавляющие поверхность Вашего жёсткого диска от сбойных секторов (бэд-блоков), как это сделать написано далее, жёсткий диск после этой операции может вернуться к жизни.
  • Важно: Казанский(разработчик программы Виктория) обещает, что самый новаторский алгоритм скрытия бэд-блоков BB = Advanced REMAP НЕ деструктивен для данных, но в некоторых случаях для Ваших файлов это может быть деструктивно, так как даже самый продвинутый алгоритм Виктории Advanced REMAP скрытие дефектов (ремап), это по любому изменение трансляции винта, а значит потеря пользовательских данных (подробности далее. Хочу сказать, что иногда бывало и так, что вылечит Victoria жёсткий диск от бэдов и Вам даже удастся скопировать инфу с такого харда, но к сожалению не вся информация получается читаемая.

Итак, в нашем случае сделать посекторную копию больного жёсткого диска, а именно нового тома E: программе DMDE сделать удалось, правда в некоторых местах DMDE немного зависала, но всё закончилось успешно. Посекторная копия нового тома (E:) представляет из себя точную копию и расположена на томе F: Все имеющиеся данные успешно читаются и копируются.

Основная задача решена и пользовательские данные спасены, теперь приступаем к процедуре лечения жёсткого диска.

Как избавится от сбойных секторов (бэд-блоков) с помощью программы Victoria

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

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

Remap

В главном окне Виктории отмечаем пункт Remap, обозначающий алгоритм переназначения бэд-блоков секторами с резервных дорожек в процессе сканирования. Тест в режиме чтения Read, то есть от начала к концу и жмём на кнопку Start.

Пока идёт сканирование поговорим вот о чём.

1. Что происходит при данном алгоритме Remap? Производится (несколько раз) попытка принудительной записи информации в сбойный сектор жёсткого диска, если попытка удачна, значит сектор становится здоровым и удаляется из списка бэд-блоков (ремап не происходит). Если попытка записи неудачна, значит больной сектор переназначается здоровым сектором со специально предназначенной для таких случаев резервной дорожки винчестера.

2. Remap это переназначение (замена) больного сектора, присвоение его номера LBA другому физически здоровому сектору из резервной дорожки. Информация из сектора (на момент переназначения) висит в ОЗУ винта, и как только сектор переназначен - записывается назад.

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

Результат. Как я и говорил в работающей Windows трудно что-либо исправить и Victoria не может осуществить Ремап. Через 20 минут тот же самый результат, 13 бэд-блоков и нам с Вами придётся делать загрузочную флешку с Викторией и работать в ДОСе.

Как в программе Victoria сканировать определённую область на жёстком диске

Если Вам известны точные адреса сбойных секторов, вы можете задать в программе Victoria точные параметры сканирования. Например, мы знаем, что наши бэд-блоки начинаются с сектора 770 000 000, тогда в пункте Start LBA: здесь задать это число и программа Victoria именно с сектора 770 000 000 начнёт сканирование и исправление поверхности жёсткого диска, также, если задать нужное Вам число в пункте End LBA: то Victoria закончит сканирование на нужном Вам секторе.

Алгоритм Erase

Друзья, вы можете спросить меня, а что будет если применить тест Erase или ещё есть Write?

Erase при обнаружении нечитаемого сектора принудительно переписывает весь блок из 256 секторов нулями (осторожно, в некоторых случаях ваши данные на жёстком диске удалятся).

  • Чаще всего попадаются софтовые (программные) бэды, которые убираются быстрее всего обнулением - алгоритмом Erase, да и при неудачной записи в сектор нулей вполне может произойти Remap, так как микропрограмма винчестера может посчитать такой сектор сбойным. Если Erase не поможет, тогда можно выбрать Remap, но как мы знаем, шансы, что Remap будет произведён в работающей Windows невелики.
  • Софтовые (программные) бэды в некоторых случаях можно убрать даже простым форматированием средствами самой Windows.

Мне не хочется ставить эксперимент над нашим жёстким диском WDC WD5000AAKS, так как я планирую в следующей статье вылечить его от бэд-блоков в ДОС режиме с помощью загрузочной флешки с программой Виктория и всё таки вернуть хозяину вылеченный от бэдов жёсткий диск с неповреждёнными данными.

Я просто покажу Вам на другом винчестере как запустить этот тест в работающей Windows.

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

Тест в режиме чтения Read

То есть от начала к концу и жмём Start.

Часто при "обнулении" в работающей Windows будут выходить вот такие ошибки:

Block (номер сбойного сектора) try Erase 256 sectors. Переписать блок секторов не удалось.

Алгоритм Write

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

Для примера возьмём реальный жёсткий диск имеющий сбойные сектора

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

Данный винчестер WDC WD5000AAKS-00A7B2 (объём 500 ГБ) реально неисправен,

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

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

Запуск Victoria

Запускаем программу Victoria от имени администратора . Соглашаемся со всеми предупреждениями о работе в 64-битной системе.

Выбираем начальную вкладку Standard. Если у нас несколько жёстких дисков, в правой части окна выделяем левой мышью нужный жёсткий диск, в нашем случае WDC WD5000AAKS-00A7B2

и переходим на вкладку SMART,

жмем кнопку Get SMART, справа от кнопки засветится сообщение GOOD и откроется S.M.A.R.T. выбранного нами жёсткого диска.

5 Reallocated Sector Count - (remap), обозначающий число переназначенных секторов это значит запасные сектора на резервных дорожках заканчиваются и скоро сбойные сектора переназначать будет нечем.

Переходите на вкладку Tests.

Тест поверхности жёсткого диска в программе Victoria!

В правой части окна программы отметьте пункт Ignor и пункт read , затем нажмите Start . Запустится простой тест поверхности жёсткого диска без исправления ошибок. Этот тест не принесёт никаких плохих или хороших воздействий на Ваш винчестер, но когда тест закончится, мы узнаем в каком состоянии находится наш жёсткий диск.

Начинается сканирование поверхности жёсткого диска и через некоторое время обнаруживаются сбойные сектора. Через 40 минут Victoria выдаёт нам такой результат:

Очень много хороших секторов с хорошей задержкой чтения не более 5 ms - 3815267

Также имеются сектора с нехорошей задержкой чтения 200 ms

Секторов с неудовлетворительной задержкой чтения более 600 ms (кандидаты в бэд-блоки) нет совсем, но...

Что совсем плохо, присутствуют полноценные сбойные сектора (бэд-блоки), информацию из которых прочитать совсем не удалось - 13!

13 сбойных секторов (бэд-блоков), все они начинаются в области 6630400 , а заканчиваются на 980000000 , то есть рассыпаны по всему жёсткому диску. Номера бэд-блоков нужно записать. Друзья, вполне возможно все наши проблемы с жёстким диском могут быть из-за этих 13 бэдов и от них нужно избавиться, но сначала сделаем посекторный образ больного винта.

Жёсткий диск пострадавшего WDC WD5000AAKS-00A7B2 (объём 500 ГБ) был разделён на два раздела: диск D: с операционной системой объём 120 ГБ и диск E: с данными объём 345 ГБ.

Перед работой с программой Victoria обезопасим себя и сделаем полный образ раздела диск E: объём 345 ГБ и данные будем вытаскивать именно с образа. Образ сделаем в другой программе DMDE и расположим его на другом физическом диске SAMSUNG HD403LJ (объём 400 ГБ) я покажу Вам как это сделать.

Управление дисками моего компьютера

Щёлкните левой мышью для увеличения скришнота

Важные данные находятся на Новом томе (E:) объём 347 ГБ жёсткого диска WDC WD5000AAKS (общий объём 500 ГБ), значит создавать будем образ раздела (E:)

Посекторный образ раздела (E:) создадим на жёстком диске SAMSUNG HD403LJ (объём 400 ГБ), на нём всего один раздел без данных Новый том (F:)

Третий физический диск в системе, это твердотельный накопитель SSD (объём 120 ГБ) диск (C:), на нём находится наша работающая операционная система Windows 8.1, в которой мы сейчас и находимся.

Создание посекторного образа всего жёсткого диска или нужного раздела в программе DMDE

Также DMDE является очень хорошим инструментом для создания посекторных копий неисправного жёсткого диска.

Идём на сайт программы DMDE http://dmde.ru/download.html и скачиваем программу, жмём GUI для Windows.

DMDE скачивается в архиве, разархивируем его и запускаем файл dmde.exe .

Затем выбираем язык Русский.

Принимаем условия Лицензионного соглашения. В начальном окне программы нам нужно для создания образа выбрать или Физическое устройство (то есть полностью жёсткий диск) или раздел с данными.

Нужен нам только том (E:), поэтому отмечаем левой мышью наш жёсткий диск WDC WD5000AAKS, затем отмечаем пункт Логические диски

и раздел (E:), затем жмём ОК.

Меню. Создать образ/клон...

Место для записи, жмём Диск.

Новый том (F:) и ОК. Нужно чтобы раздел, на котором будет создан посекторный образ неисправного жёсткого диска (или раздела с нечитаемыми данными) был по объёму не меньше этого диска.

На новом томе (F:) удалятся все данные, соглашаемся Да.

Начинается создание посекторной копии раздела (E:) больного жёсткого диска WDC WD5000AAKS на новом томе (F:) другого здорового жёсткого диска диска SAMSUNG HD403LJ, которое продолжается 6 часов (с особо "бэдастых" винтов образ снимается несколько суток) и наглухо зависает на 83 процентах, прождав пару часов я нажал на кнопку Прервать !

Друзья, если прервать создание образа посекторного раздела под самый конец (всё-таки 83%) то нас ждёт два варианта, как говаривал Суворов - "либо грудь в крестах, либо голова в кустах".

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

Но в некоторых случаях не всё так будет радужно и при попытке войти на раздел с посекторной копией нас будет ждать вот эта ошибка: Нет доступа к F:\. Файл или папка повреждены. Чтение невозможно.

Нет доступа к F:\. Файловая система не распознана. Убедитесь, что все требуемые системные драйвера загружены и том не повреждён.


Но и в этом случае сдаваться мы не будем и поступим так.

Что делать, если создание посекторного образа пойдёт с ошибками

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

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

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

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

"Игнорировать всё" и подобные ошибки будут пропущены, а можно нажать кнопку

"Параметры" и соответствующе настроить программу DMDE для такого тяжёлого случая. Нажмите в этом окне кнопку Параметры.

"Обратный ход" , иногда это приносит результат.

И опять нажмите "Параметры".

В этом окне отметьте пункт " - Всегда" . При выборе опции операция будет продолжена даже

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

Число повторов авто при ошибке CRC - 0

Заполнять плохие секторы (hex)

Затем ОК и ОК , начинается создание посекторного образа.

Щёлкните левой мышью для увеличения изображения

Также работоспособным показал себя такой вариант настроек.

Пропускать ошибки ввода-вывода - Всегда

Не ждать, если устройство не готово - Всегда

Число повторов при ошибке CRC - 0

Число авто повторов, если сектор не найден - 0

Вообще я Вам посоветую изучить мануал к программе DMDE http://dmde.ru/manual.html или http://dmde.ru/docs/DMDE-manual-ru.pdf , так же можете дождаться нашей статьи о создании посекторного образа неисправного жёсткого диска различными программами, в ней мы рассмотрим даже создание загрузочной флешки с программой DMDE.

  • Если DMDE Вам не поможет, тогда можно попробовать другие программы, например . Конечно существуют ещё способы с помощью которых можно сделать посекторный образ сбойного винта, например загрузиться с какой-нибудь операционной системы, основанной на Linux, к примеру Ubuntu, но сам процесс описывать здесь не буду и лучше напишу отдельную статью. Также под Линуксом можно запустить утилиту safecopy .
  • Что делать, если всё же посекторную копию жёсткого диска Вам сделать не удастся, выбирать Вам. Можете обратиться в хороший и зарекомендовавший себя сервис по восстановлению данных и посекторную копию с Вашего жёсткого диска снимут на специальном дорогостоящем оборудовании специалисты, например с помощью того же комплекса PC−3000. Если Вам не жалко Ваши данные, то можете рискнуть и запустить в программе Victoria алгоритмы избавляющие поверхность Вашего жёсткого диска от сбойных секторов (бэд-блоков), как это сделать написано далее, жёсткий диск после этой операции может вернуться к жизни.
  • Важно: Казанский (разработчик программы Виктория) обещает, что самый новаторский алгоритм скрытия бэд-блоков BB = Advanced REMAP НЕ деструктивен для данных, но в некоторых случаях для Ваших файлов это может быть деструктивно, так как даже самый продвинутый алгоритм Виктории Advanced REMAP скрытие дефектов (ремап), это по любому изменение трансляции винта, а значит потеря пользовательских данных (подробности далее. Хочу сказать, что иногда бывало и так, что вылечит Victoria жёсткий диск от бэдов и Вам даже удастся скопировать инфу с такого харда, но к сожалению не вся информация получается читаемая.

Итак, в нашем случае сделать посекторную копию больного жёсткого диска, а именно нового тома (E:) программе DMDE сделать удалось, правда в некоторых местах DMDE немного зависала, но всё закончилось успешно. Посекторная копия нового тома (E:) представляет из себя точную копию и расположена на томе (F:). Все имеющиеся данные успешно читаются и копируются.

Основная задача решена и пользовательские данные спасены, теперь приступаем к процедуре лечения жёсткого диска.

Как избавится от сбойных секторов (бэд-блоков) с помощью программы Victoria

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

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

Remap

В главном окне Виктории отмечаем пункт Remap , обозначающий алгоритм переназначения бэд-блоков секторами с резервных дорожек в процессе сканирования. Тест в режиме чтения Read , то есть от начала к концу и жмём на кнопку Start .

Пока идёт сканирование поговорим вот о чём.

1. Что происходит при данном алгоритме Remap? Производится (несколько раз) попытка принудительной записи информации в сбойный сектор жёсткого диска , если попытка удачна, значит сектор становится здоровым и удаляется из списка бэд-блоков (ремап не происходит). Если попытка записи неудачна, значит больной сектор переназначается здоровым сектором со специально предназначенной для таких случаев резервной дорожки винчестера.

2. Remap это переназначение (замена) больного сектора, присвоение его номера LBA другому физически здоровому сектору из резервной дорожки . Информация из сектора (на момент переназначения) висит в ОЗУ винта, и как только сектор переназначен - записывается назад.

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

Результат. Как я и говорил в работающей Windows трудно что-либо исправить и Victoria не может осуществить Ремап. Через 20 минут тот же самый результат, 13 бэд-блоков и нам с Вами придётся делать загрузочную флешку с Викторией и работать в ДОСе.

Как в программе Victoria сканировать определённую область на жёстком диске

Если Вам известны точные адреса сбойных секторов, вы можете задать в программе Victoria точные параметры сканирования. Например, мы знаем, что наши бэд-блоки начинаются с сектора 770 000 000, тогда в пункте Start LBA: (осторожно, в некоторых случаях ваши данные на жёстком диске удалятся).

  • Чаще всего попадаются софтовые (программные) бэды, которые убираются быстрее всего обнулением - алгоритмом Erase, да и при неудачной записи в сектор нулей вполне может произойти Remap, так как микропрограмма винчестера может посчитать такой сектор сбойным. Если Erase не поможет, тогда можно выбрать Remap, но как мы знаем, шансы, что Remap будет произведён в работающей Windows невелики.
  • Софтовые (программные) бэды в некоторых случаях можно убрать даже простым форматированием средствами самой Windows. Всю разницу между существующими бэд-блоками: физическими и программными, читайте в нашей статье . В двух словах объясню, что физические бэды (физиологически разрушившийся сектор) восстановить невозможно (возможен только ремап, переназначение), а логические (программные, ошибки логики сектора) восстановить можно.
  • Друзья, мы можем , но тогда наша статья будет ещё длиннее, это мы тоже сделаем в следующей статье.

Мне не хочется ставить эксперимент над нашим жёстким диском WDC WD5000AAKS, так как я планирую в следующей статье вылечить его от бэд-блоков в ДОС режиме с помощью загрузочной флешки с программой Виктория и всё таки вернуть хозяину вылеченный от бэдов жёсткий диск с неповреждёнными данными.

Я просто покажу Вам на другом винчестере как запустить этот тест в работающей Windows.

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

Тест в режиме чтения Read , то есть от начала к концу и жмём Start .

Часто при "обнулении" в работающей Windows будут выходить вот такие ошибки:

Block (номер сбойного сектора) try Erase 256 sectors . Переписать блок секторов не удалось.

Алгоритм Write

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

Наверное, пользователь уже знает, что такое bad сектора на hdd («плохие блоки») поверхности жесткого диска. Если вы этот обзор читаете, значит, как минимум, представляете: что такое «жесткий диск», и то, чего вы хотите в результате добиться (удалить bad сектора на hdd). Но действительно ли они «плохие», и насколько этот дефект «аппаратный» – попробуем разобраться.

Симптомы повреждения физической поверхности или ошибок файловой системы

Симптомы «плохих» секторов («железной» или «программной» причины), могут быть следующие:

  1. Медленный запуск установленных приложений и/или самой ОС;
  2. Беспричинное нарушение работы некоторых приложений (пропадания ранее внесенных настроек, отсутствие функций);
  3. Пропадание папок и файлов, повреждение файлов;
  4. Сильное замедление процесса копирования при обращении к файлам.

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

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

Немного теории

На жестком диске, поверхность разбита на сектора. Каждый сектор на физической поверхности одного блина называется «блок». Число блоков, если их сложить и подсчитать в сумме – всегда будет больше, чем число «показываемых» винчестером доступных блоков. То есть, любой фирмой-производителем – делается несколько (на самом деле – десятки) не используемых «частей» поверхности hdd – запасных блоков.

То, как удалять bad с винчестера, становится понятно с пониманием того, как именно работает электроника hdd. Получая «себе» адрес блока, к которому надо обратиться (на чтение/запись), этот адрес сначала будет «переведен» в физический адрес блока, что делается по специальной таблице (зашитой в ПЗУ hdd).

В таблицу, вместо физического адреса сбойного блока, непринужденно и легко можно прошить адрес одного из свободных (запасных) блоков (см. один абзац выше). Мы получим в итоге «рабочий» винчестер. Кстати, без уменьшения логического объема.

Примечание:

такая операция «переназначения» адреса блока называется «ремаппинг», или – ремап.

Чисто «логические» дефекты

Ошибки могут возникать не из-за физического повреждения поверхности, а лишь из-за нарушений в логике работы одного сектора. Эти ошибки, в свою очередь, делятся, тоже, на исправимые и не исправимые. Отличить от физических дефектов, «логические» можно только косвенным способом (используя разные тесты).

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

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

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

Ну, и, в таком случае, как удалить bad, когда он – логический? Что может помочь? Принудительная перезапись всех секторов (специальной программой, в обход даже BIOS-а) – хорошее средство от этого. После заполнения поверхности только «нулями» (потом – «единицами», потом – снова «нулями»), логический bad – исчезает бесследно.

Но есть «неисправимые» логические ошибки. Ошибки эти относятся к низкоуровневому форматированию винчестера. Сам дефект – при этом, выглядит так же. Неисправимыми же, такие дефекты считают потому, что их исправление потребует сделать «правильное» форматирование на низком уровне, что обычному пользователю чаще всего недоступно (в отсутствии фирменных утилит low-level format, да и «крепление» винта должно быть неподвижно). В быту, такие блоки винчестера отключаются теми же способами, что и «физический» bad - то есть, ремапом. Не страшно.

Программы

Для логического «затирания» поверхности (заполнение происходит «0»-ми и «1»-ми):

fjerase, wdclear, zerofill.

Образ загрузочного CD-диска с Викторией – качаем .

В rar-архиве, если его распаковать, будет один файл – файл.iso (образ загрузочного диска CD).

Работа с Victoria DOS

Во-первых, почему именно ДОС-режим, а не Windows? Дело в том, что если hdd – один, и на нем установлена Windows, из-под которой запустить Victoria win-32 – ничего «ремапить» тогда не получится, по понятным причинам (нельзя стирать Windows).

Поэтому, берем чистую болванку CD, пишем на нее загрузочный образ, и загружаемся с этого CD:

Выбрав первый пункт, жмем на «Enter».

Примечание: такой загрузочный диск (или – флешку), вы можете создать и сами. Сделав просто загрузочный диск/флешку с ДОС, затем, перенеся на нее (добавив) файлы Victoria (архив – качать тут: http://www.hdd-911.com/index.php?option=com_docman&Itemid=31&task=view_category&catid=69&order=dmdate_published&ascdesc=DESC).

Что мы должны сначала нажать (чтобы жесткий диск – определился)? Жмем «F2».

Если после этого, программа не найдет винчестер – сделать это можно самим. Жмем «P» на клавиатуре, появится меню «Выбор порта HDD» – мы выберем «Ext. PCI ATA/SATA» («стрелки», и – «Enter»):

Примечание: другие пункты нужны, если у вас системная плата с контроллерами IDE (к одному из которых подключен винчестер стандарта PATA).

И, в появившемся списке – должен быть виден нужный нам hdd (по названию фирмы/модели). Для выбора hdd, набираем номер канала (на котором он находится). Жмем «Enter». Все.

После этого, можно работать с винчестером: проводить тест и «ремапить».

Примечание: если винчестеров в системе несколько – поступаем аналогичным способом (нажать клавишу «P», и так далее).

Для начала, посмотрим, сколько «плохих» блоков уже было переназначено (для нового hdd, этот показатель может быть равен только «нулю»):

Для появления этого экрана, мы нажали «F9». Обратите внимание на пятую строку – это и есть количество секторов, которые были «переназначены» (re-allocated sector count – счетчик переназначенных секторов).

Здесь, значение равно 100 (реальное значение – первый столбец). Ну, это – не есть хорошо. Всего, у разных фирм (производящих винчестеры), максимальное число re-allocated блоков, не может превышать «критическое» – в несколько сотен (скажем так – 200-300).

Victoria DOS: тест поверхности

Для запуска теста поверхности, жмем «F4»:

Оставляем, как есть – все показатели (начало и конец диска, режим «линейного» чтения, и, на данном этапе – «игнор» для bad-блоков). Запускается тест – нажатием «Enter»:

Как видим, при выполнении теста, отображается, сколько блоков читаются с чрезмерно большим временем доступа. Число блоков, являющихся bad – также, подсчитывается (но сейчас мы не знаем, «программные» ли они, или – дефекты поверхности).

Victoria DOS: ремаппинг

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

«Плохие» сектора могут возникнуть по «программной» причине. Как устранять в этом случае – рассмотрено выше. Не поленитесь, запустите программу ZeroFill (или подобную ей). Иногда, удалить все «сбойные» блоки можно после двух-трех прогонов этой программки.

Также (как ни смешно), низкая скорость чтения периодически повторяющихся блоков – возможна из-за плохого контакта разъема SATA. Можно, кстати, попробывать переключить винчестер в более медленный режим (перемычка – на корпусе hdd, включаем «150 мегабит»).

И только, если из этих двух способов – ни один не помог (число и расположение bad-блоков, после повторно проведенного теста, не изменилось) – переходим к ремаппингу:

Как и для «теста», жмем «F4». В меню, стрелкой «вниз», идем на «Ignore bad blocks» – строку.

Теперь – внимание! – стрелками «влево» и «вправо», выбирается «Classic REMAP». Нажимается «Enter». Все (будем ждать).

Обычно, тестирование поверхности, занимает от часа и более (для 500-750 Гигабайт). Ну а для 2 Терабайтных, да еще 5000 об/мин. – и 3 часа будет мало (с режимом «ремаппинга» – дольше, но, не намного).

По завершении работы, получим «хороший» винчестер. Можно – провести еще раз, заключительный «тест». Число «переназначенных» блоков – просуммировано с уже имеющимся (смотреть, как говорили – «F9», в пятой строке).

Если вы провели тест поверхности, и в результате – видите, что число нуждающихся в «ремаппинге» блоков выходит за пределы нескольких сотен (допустим: было – 100, появилось – еще 200) – от «самостоятельного» ремонта лучше отказаться, и вовсе.

Вместо вывода

Ремапить – это хорошо. Если такая возможность – еще есть (если суммарное число переназначенных блоков не перешло некое «критическое» значение), ею можно воспользоваться. Хотя, и «долговечность» после такого метода (то есть, на сколько дней хватит винчестера) – всегда под сомнением. Этот параметр – не прогнозируется (может, винчестера хватит еще на 2 дня, может – на месяц, и т. Д.). Перенесите все нужные данные, как только доступ к ним – появится снова.

Процедура «ремаппинга» не затирает данные, то есть программа старается «прочитать» плохой блок, и скопировать данные. Однако, по возможности, перед ремапом все же рекомендуется делать резервную копию жесткого диска (программкой Ghost, например).

(Не обязательно): вместо режима «Classic REMAP», Victoria 3.5 позволяет выбрать «Advanced REMAP». Что можно сделать, если «стандартный» ремап не смог помочь полностью на 100% (остались 2-3 «плохих» блока).

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

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

Появились «сбойные» сектора? Не включайте их «исправление» из самой Windows! Конечно, при этом, она (то есть, Виндовз) будет «ремапить» каждый сектор, являющийся «сбойным» для нее (ну, а – нужно ли это?).

Другие «программки»

Как посмотреть число «переназначенных» секторов прямо из Windows?

Есть много программ, показывающих данные ПЗУ жесткого диска (данные SMART). Например, это Everest (качаем-запускаем-смотрим):

Программа абсолютно бесплатна. Скачать ее – проще здесь: http://www.aida64.com/downloads/aida64extreme270exe. Первые 30 дней – доступны все функции (но, кроме, как «смотреть», Everest, она же Aida, ничего не умеет).

Или, можно скачать Викторию – уже для Windows (начиная от версии 4.0): http://www.hdd-911.com/index.php. Идем в раздел «Файлы»:

Как видите, оф. сайт содержит обе версии (для DOS и для Windows).

Совместимость

Victoria–DOS (3.5х) – совместима с контроллерами SATA (SATA-2). Также – и с IDE, интегрированными в системную плату.

Это был обзор о bad сектора на hdd.

Как проверить жесткий диск?

Мы выяснили причины появления бэд-блоков. Мы поняли, что явление это далеко не самое приятное. А с неприятностями обычно принято бороться. Поэтому сегодня, мы будем говорить о том, какими средствами и как это нужно делать, да и собственно нужно ли.

Ошибки файловой системы

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

Способ первый: логические размышления подсказывают - необходим инструмент умеющий создать на диске нормальную файловую систему. Такой инструмент доступен всем в составе операционной системы - утилита format. Нужно загрузиться в MS-DOS и выполнить полное (именно полное) форматирование диска (команда format x: /c, x - диск с неправильной FAT, c - ключ включающий проверку кластеров поме-ченных как поврежденные). Быстрое форматирование здесь не годиться, так как оно производит лишь очистку оглавления и сохраняет информацию о бэдах. Форматирование можно выполнить и из Windows, правда для меня методы его работы до сих пор остаются загадкой и результат порой получается непредсказуем (сталкивался с тем, что снимался статус дефектного даже с физически поврежденных секторов, что приводит к более сложным проблемам. Похоже, что "Окна" просто сбрасывают статус дефектности в FAT, не вдаваясь в подробности, хотя и не всегда).

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

Способ второй состоит в приобретении программы Power Quest Partition Magic, в которой есть функция Bad Sector Retest. Она проверит именно помеченные бэд сектора, и оставит нетронутой информацию на диске.

Более продвинутые пользователи могут воспользоваться Norton Disk Editor или любым другим редактором диска и вручную пометить/разотметить нужные сектора. Программу для этих целей несложно написать и самостоятельно. Но нет нужды. Как узнать что имеющийся дефектный блок именно этого вида? Никак. Можно только попробовать (при отсутствии уверенности настоятельно рекомендую пользоваться первыми двумя методами, так как двумя последними можно ввести в обращение сбойный или нестабильный блок, нажив тем самым себе большую проблему). Если это его тип - он исчезнет и больше никак проявляться не будет. Если же нет - пробовать другие способы.

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

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

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

Утилиты выполняющие такую функцию - это wdclear, fjerase, zerofill, такая функция есть в DFT. В большинстве случаев такие утилиты универсальны, так как не используют каких-то специфических функций накопителя. Работа с ними тоже не требует специальных навыков. Зачастую такие обнулители распространяются на сайтах производителей как программы низкоуровневого форматирования, хотя не имеют к нему никакого отношения. Производители рекомендуют использовать их в случае возникновения проблем прежде, чем обращаться в сервисный центр. Если не считать разрушения информации, они безобидны.

Кроме производителей винчестеров выпуском сервисных программ занимаются сторонние компании и просто энтузиасты. Так бесплатно доступна очень полезная программа неписанная нашим программистом - MHDD (скачать ее можно . На момент написания статьи была доступна версия 2.9), которая может помочь в данной ситуации. Схема действий следующая: программу записываем на системную дискету и загружаемся с нее. Изучаем состояние SMART с помощью внешнего SMART-монитора (бесплатным SMARTUDM например) и не полагаясь на свою память, сохраняем результаты в файл.









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

По завершении производим проверку поверхности диска -нажимаем F4 и выби-раем и в верхней строчке выбираем наш режим работы (скорее всего это будет LBA, но вам видней), и еще раз жмем F4 (можно ввести в консоли команду SCAN). Смотрим на предмет наличия наших бэдов.



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

Вполне может быть, что у вас возник вопрос, а почему же нельзя использовать как в предыдущем случае команду format с ключом /c, который выполняет проверку бэдов? Ответ уже в принципе звучал: эта программа использует стандартные средства BIOS и не может произвести запись в бэд. Видимо, разработчикам из Microsoft не захотелось себя особенно утруждать. Попытка восстановления такого сектора о которой сообщает формат есть просто многократная попытка его чтения (сколько бы раз он ни читался, он не прочитается, контроллер уже признал этот факт!). Осуществить полноценную проверку такого бэда format не может, так как не может произвести в него запись. Единственное для чего он пригоден - это восстановление плохих секторов являющихся ошибками файловой системы.

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

Физические повреждения HDD

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

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

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

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

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

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

Этот процесс называется внутренним форматированием, происходит без внешнего участия под действием программы винчестера. Кроме заводского P-list`a дефектов накопитель имеет еще G-list (Grown-list) - в него заносятся сведенья о бэд-секторах обнаруженных в процессе эксплуатации. В домашних условиях единственное, что можно сделать - это лишь переназначить обнаруженный дефект в резервную область со всеми вытекающими отсюда последствиями (падение производительности).

Сразу же сделаем несколько оговорок. Размер G-list не велик и ремап (remap, т.е. переназначение) не может происходить до бесконечности: только до тех пор пока в G-list`е есть место. Или пока не исчерпалась резервная поверхность. Также нужно помнить, что чем большее число секторов переназначено, тем чаще будет происходить позиционирование в резервную область, тем медленнее будет работа. Стоит серьезно подумать над тем, нужно ли это делать: стоит ли небольшая потеря пространства и красивая не испорченной буквами B картинка в Scandisk ощутимой (в зависимости от числа выполненных перена-значений) производительности. Быть может лучше просто оставить его в явном виде и радоваться жизни. Процесс ремапа необратимый. Если что-то не устроит, вернуть из-менения не получится.

Если же ответ отрицательный, необходимо запастись одной из следующих программ: HDD Speed, HDD Utility, или опять же MHDD. Кроме того нужна какая-нибудь программа просмотра SMART атрибутов: такая есть составе HDD Speed, но можно взять стороннюю (SMARTUDM). Предполагается, что вы уже пробовали лечить логические бэды, попытки окончились неудачно, и мы теперь пытаемся скрыть физические. Рассмотрим снова пример MHDD. Механизм действий будет почти такой же, как и в прошлый раз. Запустившись с дискеты изучаем состояние SMART. Потом запускаем MHDD, выбираем нужный привод.

Информацию с винчестера сохранять не нужно (но можно), так как она не будет разрушена. Инициализируем привод нажатием F2. Нажав F4 выбираем нужный параметр верхней строчке LBA или CHS, и включаем функцию ремапа, и запускаем запускаем проверку поверхности диска повоторным нажатием F4 (или вводим в консоли команду SCAN).

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

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

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

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

Связано форматирование на низком уровне с командой 50h стандарта ATA, пришедшей туда от интерфейса ST506/412. Она должна выполнять форматирование дорожки с заданными физическими параметрами. Однако, на низком уровне все современные винты очень сильно разняться, так как этот уровень целиком разрабатывается производителем самостоятельно. Транслятор скрывает внутреннюю структуру, и потому в этой команде нет смысла. Большинство современных винчестеров поддерживают ее для совместимости. Но так как ее изначальная функция уже не актуальна, то реагируют на не совершенно по разному. Во-первых, команда может быть полностью проигнорирована Во-вторых в некоторых старых накопителях команда способна затереть области служебных данных (очевидно отсюда и слухи о его разрушающем действии Low Level Format). А кроме этого, в третьих, она может осуществить запись всех нулей в область пользовательских данных, или, в четвертых, произвести переназначение сектора, что важно для нас в конетксте этой статьи. Разговоры о чудодейственности такого форматирования происходят видимо от того, что порой удается полечить с ее помощью логические бэды или сделать переназначение для физических. Именно это есть суть такого форматирования-лечения. Не более того. Но у нас уже есть необходимые средства. За-чем искать приключений?

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

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

Немного истории

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

Самые первые жесткие диски имели дефект-лист в виде бумажной наклейки, в которую на заводе вписывали адреса нестабильных участков. Эти устройства, представляющие собой слегка измененную копию обычного флоппи-дисковода, могли работать только под своими физическими параметрами: число дорожек, секторов и головок, указанное в их паспорте, точно совпадало с их реальным количеством. Приобретая такой девайс, пользователь читал наклейку и сам заносил адреса убитых участков в FAT. После этого операционная система переставала замечать эти дефекты, точно так же, как она не замечает бэд-блоки на дискетах, если они были убраны утилитой Scandisk. Вероятно, в те далекие времена и появился термин "бэд-блок": блоком называли кластер - минимальную единицу логического дискового пространства. На физическом уровне кластер состоит из нескольких секторов, и при повреждении одного сектора ОС объявляет негодным весь кластер. Никаких других методов скрытия дефектов в то время не существовало. А когда появились способы скрывать отдельные секторы, люди не стали выдумывать новые понятия, и до сих пор успешно продолжают пользоваться словом "блок".

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

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

Для того, чтобы все винты одной модели, но с разным количеством дефектов, имели одинаковую емкость, на каждом из них стали оставлять запасные дорожки - резерв, специально предусмотренный для выравнивания емкости однотипных накопителей до стандартной заявленной величины. Его стали располагать в конце диска, возле его центра, и он тоже был недоступен пользователю. Такие винчестеры при выходе с завода не имели не одного видимого bad-сектора. Если в процессе эксплуатации появлялись новые дефекты, пользователь мог сделать низкоуровневое форматирование универсальной утилитой из BIOS материнской платы, и попытаться их скрыть. Иногда, как и на дискетах, это удавалось. Но если "нечисть" была физической, то это не помогало: добавить новые дефекты в таблицу и переписать транслятор без специальных программ было невозможно. Поэтому bad-блоки на многих старых винтах (до 1995 года), приходилось скрывать все тем же, устаревшим способом - через FAT. И лишь фирмы Seagate, Maxtor и Western Digital выпустили утилиты для скрытия дефектов с замещением их из резерва.

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

Написанное на корпусе винчестера число цилиндров, секторов и головок, перестало соответствовать своим истинным значениям, и попытки отформатировать такой винт старыми утилитами, как правило, заканчивались неудачно: его контроллер отвергал стандартную ATA-команду 50h, или просто имитировал форматирование, заполняя винт нулями. Это было специально оставлено для совместимости со старыми программами. По этой же причине процедура Low-Level Format была исключена из BIOS современных материнских плат. А чтобы сделать таким жестким дискам настоящее низкоуровневое форматирование, нужно было обойти транслятор, получив прямой доступ к физическим дорожкам и головкам. Для этого стали использовать технологическую утилиту, запускающую специальный микрокод, записанный в ПЗУ накопителя. Команда вызова этого микрокода - уникальна для каждой модели, и относится к технологическим командам, которые фирмой не разглашаются. Часто такое форматирование нельзя было сделать через стандартный IDE-интерфейс: многие модели HDD выпуска 90-х годов - Conner, Teac и др., а также все современные Seagate, требуют подключения отдельного разъема к терминалу через COM-порт.

Что касается технологических утилит, то они никогда широко не распространялись и обычному пользователю были недоступны. Для широкого применения были написаны "программы-дурилки", осуществляющие псевдо-форматирование через интерфейс: заполнение диска нулями для очистки его от информации. Это видно даже из названий этих утилит, которые можно найти на сайтах производителей жестких дисков: wdclear, fjerase, zerofill и т.д. Естественно, никаких технологических команд в этих программах нет, и поэтому их можно применять к любым винчестерам. Такие утилиты часто оказываются полезны, помогая избавиться от некоторых видов BAD"ов, о чем мы поговорим чуть позже.

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

Попробуем разобраться, так ли это на самом деле. А заодно рассмотрим, что же такое настоящее низкоуровневое форматирование современных винчестеров, можно ли его делать самому, и что самое главное - нужно ли нам оно?

Подготовка винчестера на заводе

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

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

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

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

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

Новые технологии

Теперь понятно, почему фирменные утилиты не делают никаких операций, связанных с прямым доступом к служебной области. Ведь скрытие дефектов форматированием - это практически полный ремонтный цикл, основанный на внешних параметрах и связанный с четким пониманием каждого шага. И достаточно сделать что-то неправильно, чтобы угробить накопитель. Приведем простой пример: пользователь решил сделать "настоящее" низкоуровневое форматирование путем запуска подпрограммы ПЗУ в технологическом режиме. Процесс обычно длится 10-60 минут, но тут случается перебой с питанием или банальное зависание - и винт остается без транслятора, так как. просто не успевает его заново создать. Это означает, что к дальнейшей работе такой девайс будет непригоден - его просто не увидит ни ОС, ни BIOS.

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

Преимущества ремапа перед внутренним форматированием - отсутствие перевода винта в технологический режим, быстрота проведения и безопасность для накопителя. Кроме того, во многих случаях ремап можно делать без удаления файловой системы, и без связанного с этим уничтожения данных. Эта технология получила название automatic defect reassignment (автоматическое переназначение дефектов), а сам процесс - reassign . Таким образом remap и reassign - это по большому счету одно и тоже, хотя термин reassign обычно применяют к отдельному сектору, а remap - ко всему диску.

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

Если ошибка возникает во время обычной работы ОС, автоматический ремап происходит крайне редко. Это связано с тем, что, на большинстве HDD, reassign срабатывает только при записи. А многие ОС перед записью проверяет сектор на целостность, и обнаруживая ошибку, отказывается в него писать. Поэтому, в большинстве случаев для производства ремапа винт надо об этом "попросить" - произвести принудительную низкоуровневую перезапись сектора в обход стандартных функций ОС и BIOS. Это делается программой, способной обращаться к винчестеру напрямую через порты IDE-контроллера. Если во время такой записи возникнет ошибка, контроллер автоматически заменит этот сектор из резерва, и BAD исчезнет.

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

Наиболее распространенным мифом среди пользователей является утверждение, что для каждого винта нужна своя, "особая" программа скрытия дефектов, а также то, что ремап - это низкоуровневое форматирование. На самом деле это не так. Ремап - это всего лишь разновидность записи информации стандартными средствами, и в большинстве случаев любые утилиты для ремапа могут применяться к любым винтам. Ремап делают не внешние программы, а контроллер жесткого диска. Только он принимает решение о переназначении дефектных секторов. Испортить накопитель "чужие" программы тоже не могут, так как технологические команды в них не используются, а в обычном режиме винт никогда не позволит сделать с собой ничего, кроме стандартных операций чтения-записи. Единственное различие между фирменными утилитами заключается в количестве попыток записи/чтения/верификации для разных винтов. Для того, чтобы контроллер "поверил", что в секторе имеется подлежащий скрытию BAD, некоторым винчестерам достаточно одного цикла, а другим - нескольких.

Снова о S.M.A.R.T.

Почти все винчестеры, выпущенные после 95-го года, имеют систему оперативного наблюдения за своим состоянием - S.M.A.R.T. (Self Monitoring And Reporting Technology). Эта технология позволяет в любое время оценить такие важные параметры накопителя, как количество отработанных часов, число возникших в процессе чтения/записи ошибок и многое другое. Первые винчестеры, оснащенные этой системой (например, WD AC21200) имели очень несовершенный SMART из четырех-шести атрибутов. Но вскоре был разработан стандарт SMART-II, и с момента его появления в большинстве накопителей появилась такая особенность, как внутренняя диагностика и самоконтроль. Эта функция основана на проведении серии автономных внутренних тестов, которые можно запустить стандартными ATA-командами, и предназначена для углубленного контроля за состоянием механики накопителя, поверхности дисков и многих других параметров.

После выполнения тестов, накопитель в обязательном порядке обновляет показания во всех SMART-атрибутах, в соответствии со своим текущим состоянием. Время тестирования может варьироваться от нескольких секунд до 54 минут. Активизировать тесты SMART можно, например, программой MHDD (консольная команда "smart test"). После запуска тестов возможны "странные" явления, очень похожие на те, что возникают при работе дефрагментатора: непрерывное горение индикатора HDD и звук интенсивного движения головок. Это нормальное явление: винчестер сканирует поверхность для поиска дефектов. Нужно просто подождать некоторое время, пока самотестирование закончится, и винт успокоится.

Позже появилась спецификация SMART-III, в которой имеется не только функция обнаружения дефектов поверхности, но и возможность их восстановления "на лету" и многие другие новшества. Одной из его разновидностей стала система Data Lifeguard , применяемая в накопителях Western Digital. Ее суть заключается в следующем: если к винту не происходит никаких обращений, он начинает самостоятельно сканировать поверхность, выявляя нестабильные секторы, и при их обнаружении переносит данные в резервную область. После чего делает ему reassign. Таким образом данные оказываются спасены еще до того, как на этом месте возникнет настоящий BAD. В отличие от SMART-мониторинга, Data Lifeguard не может быть отключен внешними командами и работает постоянно. Поэтому "видимые" BAD-блоки на современных винчестерах Western Digital практически никогда не появляются.

Для просмотра SMART-статуса жесткого диска используют программы, называемые SMART-мониторами. Один из них входит в состав комплекса HddUtil для DOS и называется smartudm. Эта программа работает с любыми жесткими дисками и контроллерами. Кроме того, в комплекте с ней идет подробная документация с описанием всех атрибутов. Существуют SMART-мониторы и для Windows 9x, например, очень популярны SiGuardian и SmartVision, но они могут не работать на некоторых системах. Объясняется это тем, что программы работают с винтом напрямую, через порты, а bus mastering-драйвера некоторых чипсетов мешают этому. Обладателям Windows XP стоит обратить внимание на монитор SmartWiew www.upsystems.com.ua/ - приложение корректно работает в этой системе даже на чипсетах VIA.

Между атрибутами SMART и состоянием поверхности существует некоторая взаимосвязь. Рассмотрим те из них, которые имеют прямое отношение к bad-блокам:

  • Reallocated sector count и Reallocated event count : число переназначенных секторов. Эти атрибуты показывают количество секторов, переназначенных ремапом в Grown дефект-листе. У новых винтов они обязательно должны быть равны нулю! Если их значение отличается от нуля, то это означает, что жесткий диск уже был в употреблении, на нем появлялись бэды, и ему был сделан ремап. Будьте внимательны при покупке б/у!
  • Raw read error rate : количество ошибок чтения. У многих HDD они всегда выше нуля, но если значение Value находится в пределах нормы (зеленая зона), опасаться нечего. Это "мягкие" ошибки, успешно скорректированные электроникой накопителя и не приводящие к искажению данных. Опасно, когда этот параметр резко снижается за короткий срок, переходя в желтую зону. Это говорит о серьезных проблемах в накопителе, о возможном появлении бэдов в ближайшее время, и о том, что пора делать резервную копию важных данных;
  • Current Pending Sector : этот атрибут отражает содержимое "временного" дефект-листа, присутствующего на всех современных накопителях, т.е. текущее количество нестабильных секторов. Эти секторы винт не смог прочесть с первого раза. Поле raw value этого атрибута показывает общее количество секторов, которые накопитель в данный момент считает претендентами на remap. Если в дальнейшем какой-то из этих секторов будет прочитан (или переписан) успешно, то он исключается из списка претендентов. Постоянное значение этого атрибута выше нуля говорит о неполадках в накопителе.
  • Uncorrectable Sector : показывает количество секторов, ошибки в которых не удалось скорректировать ECC-кодом. Если его значение выше нуля, это означает, что винту пора делать ремап: не исключено, что во время записи данных ОС нарвется на этот сектор и в результате какая-нибудь важная информация или системный файл окажутся испорчены. Однако, у некоторых винтов этот атрибут почему-то не сбрасывается и после ремапа, поэтому доверять его показаниям необязательно.

Виды дефектов и причины их появления

Настало время разобраться, а отчего, собственно, возникает такая неприятность, как бэды? Для этого рассмотрим структуру сектора, в том виде, каким его видит электроника винта "изнутри":

Рис. 1. Упрощенная структура сектора жесткого диска

Как видно из рисунка 1, все намного сложнее, чем могло показаться на первый взгляд, даже с помощью дискового редактора. Сектор состоит из заголовка-идентификатора и области данных. Начало сектора помечается специальным байтом - адресным маркером (1). Он служит для сообщения контроллеру о том, что сектор находится под головкой. Затем следуют ячейки, в которых содержится уникальный адрес сектора в формате CHS (2) и его контрольная сумма - для проверки целостности записанного адреса (3). 512 байт данных пользователя помещаются в отдельном поле (4), к которому при записи добавляется несколько десятков байт избыточной информации, предназначенной для коррекции ошибок чтения с помощью ECC-кода (5). Рядом с данными размещается 4 байта циклической контрольной суммы (CRC) данных, которая служит для проверки целостности данных пользователя, и сообщения системе коррекции ошибок при ее нарушении (6). Для более надежной работы сектора при колебаниях скорости вращения имеются байты-пробелы (7). У некоторых винчестеров имеется дополнительный байт после AM - в нем сектор помечается как BAD.

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

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

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

Физические дефекты

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

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

Однако в процессе эксплуатации винта, некоторые сервометки могут оказаться разрушены. Если мертвых сервометок станет слишком много, в этом месте начнут происходить сбои при обращении к информационной дорожке: головка, вместо того, чтобы занять нужное ей положение и прочитать данные, начнет шарахаться из стороны в сторону. Это будет выглядеть как жирный и особо наглый BAD, или даже как их группа. Их присутствие часто сопровождается стуком головок, зависанием накопителя и невозможностью исправить его обычными утилитами. Устранение таких дефектов возможно только специальными программами, путем отключения дефектных дорожек, а иногда и всей дисковой поверхности. Для этих целей в некоторых накопителях имеется серводефект-лист, хранящий информацию о плохих сервометках. В отличие от P- и G-листа, серводефект-лист используется не транслятором, а всей микропрограммой винта. К секторам, имеющим дефектные сервометки, блокируется доступ даже по физическим параметрам, что позволяет избежать стуков и срывов при обращении к ним. Самостоятельно винчестер восстановить сервоформат не может, это делается только на заводе.

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

Логические дефекты

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

Исправимые логические дефекты (софт-бэды) : появляются, если контрольная сумма сектора не совпадает с контрольной суммой записанных в него данных. Например, из-за помех или отключения питания во время записи, когда винт уже записал в сектор данные, а контрольную сумму записать не успел (Рис. 1). При последующем чтении такого "недописанного" сектора произойдет сбой: винчестер сначала прочитает поле данных, потом вычислит их контрольную сумму и сравнит полученное с записанным. Если они не совпадут, контроллер накопителя решит, что произошла ошибка и сделает несколько попыток перечитать сектор. Если и это не поможет (а оно не поможет, так как контрольная сумма заведомо неверна), то он, используя избыточность кода, попытается скорректировать ошибку, и если это не получится - винт выдаст ошибку внешнему устройству. Со стороны операционной системы это будет выглядеть как BAD. Некоторые жесткие диски имели повышенную склонность к образованию софт-бэдов из-за ошибок в микропрограмме - при определенных условиях контрольные суммы вычислялись неправильно; у других это происходило из-за дефектов механики.

Операционная система или BIOS не могут исправить логический дефект самостоятельно, так как прежде чем писать в сектор, они проверяют его на целостность, нарываются на ошибку и отказываются писать. При этом контроллер винта эту ошибку скорректировать тоже не может: он тщетно пытается прочитать этот сектор со второй, с третьей попытки, и когда это не получается - он всеми силами пытается себе помочь, на ходу подстраивая канал чтения и сервосистему. При этом и раздается душераздирающий скрежет. Этот скрип производят не "головки по поверхности", как многие привыкли думать, а всего лишь катушка позиционера, из-за специфической формы тока, протекающего через нее, и он абсолютно безопасен. Адрес непрочитанного сектора попадает во временный дефект-лист, изменяя значение атрибута Current Pending Sector в SMART, и сохраняется в нем. Ремапа при чтении не происходит.

И только принудительная низкоуровневая перезапись этого сектора специальной программой в обход BIOS приводит к автоматическому перерасчету и перезаписи контрольной суммы, то есть BAD-блок бесследно исчезает. Переписать его можно дисковым редактором, способным работать с винтом непосредственно через порты, но обычно "переписывают" весь диск, заполняя его секторы нулями. Утилиты, делающие это, свободно распространяются производителями накопителей, и часто неправильно называются "программами для низкоуровневого форматирования". На самом деле это - простые "обнулители", что нисколько не мешает им избавлять винт от бэдов: при удачной записи софт-бэды исчезают, а при неудачной - бэд считается физическим, и происходит авторемап.

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

"Адаптивные" бэды . Несмотря на то, что винты является очень точными устройствами, при их массовом производстве неизбежно возникает разброс параметров механики, радиодеталей, магнитных покрытий и головок. Старым накопителям это не мешало, но у современных винтов с их огромной плотностью записи, малейшие отклонения в размерах деталей или в амплитудах сигналов, могут привести к ухудшению свойств изделия, появлению ошибок, вплоть до полной потери его работоспособности. Поэтому все современные накопители при изготовлении проходят индивидуальную настройку, в процессе которой подбираются такие параметры электрических сигналов, при которых устройству работается лучше. Эта настройка осуществляется программой ПЗУ при технологическом сканировании поверхности. При этом генерируются так называемые адаптивы - переменные, в которых содержится информация об особенностях конкретного гермоблока. Адаптивы сохраняются на блинах в служебной зоне, а иногда во флэш-памяти на плате контроллера.

Если в процессе эксплуатации винта адаптивы окажутся разрушены (это может случиться в результате ошибок в самом винте, статического электричества или из-за некачественного питания), то последствия могут быть непредсказуемы: от банальной кучи бэдов до полной неработоспособности девайса, с отказом выходить на готовность по интерфейсу. "Адаптивные" бэды отличаются от обычных тем, что они "плавающие": сегодня они есть, а завтра могут исчезнуть и появиться совсем в другом месте. Ремапить такой винт бесполезно - дефекты-призраки будут появляться снова и снова. И при этом дисковая поверхность может быть в безупречном состоянии! Лечатся адаптивные бэды прогоном selfscan - внутренней программы тестирования, аналогичной той, что применяется на заводе при изготовлении винтов. При этом создаются новые адаптивы, и винт возвращается к нормальному состоянию. Это делается в условиях фирменных сервис-центров.

Намечающиеся дефекты

Это участки поверхности, на которых еще не сформировался явно выраженный дефект, но уже заметны проблемы со скоростью чтения. Это происходит от того, что сектор не читается контроллером с первого раза, и винт вынужден делать несколько оборотов диска, пытаясь прочитать его без ошибок. Если прочитать данные все-таки удается, то винт ничего не сообщит операционной системе, и ошибка останется незамеченной до тех пор, пока на этом месте не возникнет настоящий BAD-блок. Как правило, тут же выясняется, что именно на этом месте хранился очень важный файл, в единственном экземпляре, и спасти его уже нельзя. Поэтому диски нужно периодически тестировать. Это можно делать программой Scandisk или Norton Disk Doctor в режиме тестирования поверхности, но лучше - специальной утилитой, работающей независимо от файловой системы и умеющей выявлять намечающиеся BAD-секторы, замеряя время чтения каждого сектора.

Практика

Каждая фирма, выпускающая винчестеры, обычно разрабатывает специальный софт для диагностики и обслуживания своих накопителей, размещая его в Сети для свободного использования. Иногда эти утилиты уже содержат в своем составе операционную систему (обычно это одна из разновидностей DOS), как, например, Sea Tool от Seagate или Drive Fitness Test от IBM (теперь уже Hitachi). А иногда это просто исполняемый файл, который нужно самому запустить из DOS, как у Maxtor (уже принадлежащей Seagate) или Fujitsu. Такой софт позволяет протестировать накопитель на наличие ошибок и при возможности исправить их. Среди методов исправления часто можно встретить функции очистки диска (заполнение его нулями с уничтожением всей информации), а также скрытия дефектов методом ремапа. Но мы не будем рассматривать фирменные утилиты - как мы узнали, эти программы делают вполне стандартные вещи: запись нулей и проверку поверхности. Поэтому обратим внимание на несколько очень неплохих альтернативных программ.

Итак, мы имеем такую забавную вещицу, какой является "бэдастый хард". Или хотим застраховать себя от "сюрпризов" и проверить его, пока он исправен. Для этого, прежде всего, программу MHDD. Всем, у кого имеются древние винты объемом до 8.4 Гбайт, особенно старые Western Digital, рекомендуется иметь в хозяйстве программу для DOS.

Прежде всего, нужно подготовить диагностический софт и создать загрузочный диск с MS-DOS. Можно пожертвовать загрузочной дискетой Windows 9x, удалив с нее все файлы кроме io.sys, msdos.sys и command.com. На освободившееся место записываем исполняемый файл программы MHDD: mhdd2743.exe и файл конфигурации mhdd.cfg. Так как свободного места на дискете еще много, записываем на нее SMART-монитор smartudm.exe , и какой-нибудь файл-менеджер, например Volkov Commander. Он понадобится для просмотра содержимого отчетов работы программ. Для удобства все файлы размещаем в корневом каталоге дискеты. Как вариант - дискету можно вообще не создавать или использовать ее только для загрузки DOS, а все программы запускать прямо с основного винчестера, подключив проверяемый винт на другой канал. Записывать программы на CD, чтобы запускать их оттуда, не нужно - диск обязательно должен быть открыт для записи, так как программы будут создавать на нем логи работы, и потерпев при этом неудачу, попросту сглючат. После внимательного знакомства с описанием MHDD и SMARTUDM можно приступить к экзекуции. Для начала посмотрим SMART-информацию нашего накопителя (в дальнейшем это придется делать не раз).

Загружаемся с нашей дискеты, и если исследуемый винт висит на первичном IDE-канале, набираем в командной строке: a:smartudm, а если на вторичном - a:smartudm 1. Если в системе больше двух жестких дисков, то цифра может быть больше 1. Перед нами появится таблица, характеризующая состояние накопителя (Рис. 2).

Рис.2. График SMART-статуса жесткого диска для быстрой оценки его состояния

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

Надпись "T.E.C. not detected" означает то, что текущее состояние винта в полном порядке. Если это не так, то будет выдано предупреждение, выделенное красным цветом. Посмотрев на цветную диаграмму, можно быстро оценить, какой именно SMART-атрибут вызвал такое недовольство программы. В случае большого количества бэдов им наверняка будет самый верхний (Raw Read Error Rate). Но эта информация приблизительная, а нам нужны абсолютные значения атрибутов, поэтому нажимаем и видим примерно такую картинку (Рис. 3):

Рис.3. Расширенный SMART-статус жесткого диска (точные значения атрибутов)

Вот этот режим SMART-монитора и является основным, и по нему мы будем контролировать состояние накопителя при любых дальнейших действиях. Например, посмотрев значение атрибута 5 (Reallocated Sector Count), мы увидим содержимое пользовательского дефект-листа и сможем судить о том, удалось ли скрытие дефектов. При нажатии клавиши текущий SMART-лог сохраняется в файл. Нажав клавишу можно выйти из программы в DOS. Некоторые атрибуты контроллер обновляет "на лету", несколько раз в минуту, поэтому для получения наиболее достоверного результата, винт нужно протестировать, чем мы сейчас и займемся.

Выходим из SMART-монитора, и запускаем программу MHDD, введя в командной строке имя ее исполняемого файла. После загрузки следует сразу нажать комбинацию клавиш - программа просканирует шину и покажет список подключенных к системе накопителей. Выберите тот, который нужно проверить, введя в консоль нужную цифру от 1 до 10 (Рис. 4). Затем следует нажать для инициализации выбранного винта.

Рис.4. Инициализация винта по команде

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

Для этого нажимаем , и в верхней строчке появившегося меню ставим параметр (по умолчанию там стоит CHS). Переключение между режимами CHS и LBA осуществляется с помощью клавиши "пробел". Затем нажимаем второй раз. По экрану побегут серые прямоугольники. Это займет 10-30 минут, и абсолютно безопасно для хранящейся на винте информации, так как при этом происходит только чтение секторов. Вот что про этот режим написал автор программы в документации к ней:

"При выполнении проверки поверхности справа появится окно. В первой строке этого окна будет отображаться текущая скорость работы с поверхностью. В последней - два значения в процентах. Первое значение показывает процент выполнения текущего теста в заданном промежутке, а второе отображает, насколько далеко головки ушли от 0 цилиндра и пришли к последнему. В процессе тестирования поверхности один квадратик равен 255 секторам (при тестировании в режиме LBA), либо числу секторов в строке параметров HDD (обычно, 63 - при тестировании в режиме CHS). Чем "мутнее" квадратик - тем больше накопителю потребовалось времени для чтения этого блока секторов. Если пошли цветные квадратики - значит, накопитель не вписался в отведенный ему для работы промежуток времени. Цветными квадратиками отображается ненормальное состояние поверхности (но еще без BAD"ов). Чем ниже по меню цвет - тем больше накопителю понадобилось времени для чтения этого трудночитаемого участка. Красный цвет - признак того, что на этом месте уже почти сформировался BAD block. Вопросительный знак появляется при превышении максимального времени ожидания готовности. То есть, при появлении [?] можно считать, что накопитель "подвис" на этом месте и здесь явно присутствует либо серьёзный дефект поверхности, либо неисправен блок магнитных головок (БМГ). Всё, что ниже вопросительного знака - это ошибки (BAD block). Если они появляются в процессе тестирования, значит, на поверхности есть физические дефекты."

При наличии BAD-блоков, вместо квадратиков обычно появляются значки [x], очевидно символизирующие кресты. Если поверхность в порядке и без цветных квадратиков, а все SMART-атрибуты находятся в зеленой зоне, можно вздохнуть свободно: винт пока исправен.

Если же MHDD показал, что на поверхности имеются дефекты, а винт при этом "зависает" или издает скребущие звуки, значит проблемы есть. Но не будем думать сразу о плохом: ведь бэды могут быть логическими (софт-бэды), поэтому для начала устроим накопителю "прочистку мозгов" - выполним низкоуровневую запись нулей во все секторы. (Внимание! При этом вся информация будет уничтожена, поэтому копируем важные данные на другой диск). Программа MHDD имеет две команды для обнуления дисков: erase и aerase . Мы будем использовать первую, так как она работает быстрей.

Инициализируем винт, нажав клавишу (эту процедуру желательно делать перед любыми действиями), и вводим команду ERASE в консоль. Будьте очень внимательны при выборе накопителя, иначе по ошибке можно загубить свой рабочий винт: данные при этом теряются безвозвратно, и даже в ФСБ их уже не восстановят! Процедура очистки идет довольно медленно, занимая несколько десятков минут. Но в дальнейшем, немного разобравшись с программой, вы сможете стирать диск выборочно, введя начальный и конечный номер сектора перед запуском процедуры. Это очень удобно, если бэды находятся ближе к концу диска, а его начало безупречно.

Выполнив очистку, снова запускаем тест поверхности (нажав два раза или консольной командой SCAN). При этом контроллер винта должен пересчитать жизненно важные SMART-атрибуты, что сделает его SMART-статус более достоверным. Если бэдов больше нет, винт можно считать отремонтированным. Выходим из MHDD, запускаем наш SMART-монитор и смотрим на значение атрибута Reallocated Sector Count. Если оно после очистки не увеличилось, а дефекты исчезли - значит они были логическими. Если увеличилось - они были физическими, и контроллер произвел успешный ремап этих секторов. Если же наоборот, бэды остались, а значение атрибута Raw Read Error Rate катастрофически упало - все намного сложнее, и винт имеет серьезные повреждения. Будем пытаться лечить его дальше - делать ремап.

Возможно, вы уже успели заметить, что при однократном нажатии клавиши в MHDD появляется меню, содержащее дополнительные параметры сканирования (Рис. 5)

Рис.5. Настройки параметров сканирования и ремапа

Среди этих параметров есть функция ремапа. По умолчанию она выключена, но поставив на нее курсор и нажав "пробел", можно включить её (Remap: ON). В этом режиме MHDD будет пытаться вылечить дефектный сектор, всячески показывая контроллеру, что там имеется BAD и его нужно скрыть. При этом возле каждого успешно скрытого сектора возникает синий квадратик или надпись . После ликвидации всех бэдов нужно еще раз прогнать тест поверхности, выйти из MHDD и снова запустить SMART-монитор, убедившись в том, что значение Reallocated Sector Count увеличилось. Это означает, что ремап прошел успешно, без ошибок, и дефекты действительно были замещены из резерва.

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

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

Может случиться так, что даже после всех проведенных операций бэды останутся, а SMART покажет то, что ремап не происходит. Причин может быть несколько:

  • винт очень старый, и его контроллер не поддерживает функцию Automatic Defect Reassignment. Например, винты фирмы вообще ремапу не поддаются. Лечится только специальными технологическими утилитами;
  • у винта может быть переполнен G-list, и в нем больше нет места для новых дефектов. Это хорошо видно в SMART по завалу атрибута Reallocated Sector Count. Такой винт ремонтируется в условиях мастерской, путем переноса всех ремапов в P-list и последующего низкоуровневого форматирования;
  • процедура автозамещения дефектов была отключена в самом винте. Фирменные утилиты некоторых накопителей позволяют это делать, и ими же можно вновь включить его. Это достаточно редкий случай;
  • на винте может появиться особый, не поддающийся ремапу дефект. Например, если физически разрушен заголовок сектора, в котором сектор помечается как BAD, или сильно повреждены сервометки. Такой винт ремонтируется только в технологическом режиме, у хорошего специалиста;
  • контроллер так и не смог поверить в то, что сектор действительно дефектный, так как он все-таки смог прочитать/записать его, пусть даже не с первой попытки. В этом случае ремап не произойдет. Ни одна программа скрытия дефектов никогда не пишет напрямую в дефект-листы. Это может сделать только сам контроллер, на основании своих наблюдений. Для того чтобы он "поверил" в то, что в данном месте имеется бэд, и скрыл его, иногда приходиться довольно долго это ему объяснять, всячески показывая проблемный сектор - многократно производить запись/чтение, до возникновения ошибки. Поэтому утилиты для ремапа никогда не скроют намечающийся дефект. Для того, чтобы это произошло, нужен только "настоящий" BAD. Такая "недоверчивость" сделана специально: ведь каждый перемещенный сектор ухудшает параметры накопителя, снижая его быстродействие. И скрыть 666 бэдов ремапом скорей всего не получится - размер пользовательского дефект-листа ограничен, и при определенном его значении (от десятков до нескольких сотен секторов, в зависимости от конкретной модели), винт заваливает себе SMART, сообщая о том, что ему пора в ремонт или на свалку.

Но не спешите выкидывать такой накопитель. Если он относительно современный, и не имеет переполненного дефект-листа (атрибут 5 в норме), надежда на ремап еще есть. Просто нужно попробовать применить к нему другую программу, имеющую большее количество циклов записи в дефектный сектор. К таким программам относится HDD Utility для DOS. Она работает немного иначе, чем MHDD: в ней функции проверки поверхности и ремапа разделены, и ремап производится на основе протокола, создаваемого при сканировании. По этому сначала запускаем проверку, пройдя цепочку: - - , а затем переходим к пункту - - (Рис. 6). Перед этим желательно ознакомиться с описанием этой программы, благо оно очень подробное и написано по-русски. Недостатки Hdd Utility - непонимание накопителей с объемом больше 8.4 Гбайт и отказ работать с некоторыми моделями (последнее связано с ограничением бесплатной версии). Но это не столь важно - "трудноремапящиеся" винты обычно имеют небольшую емкость - обычно это различные модели Western Digital емкостью 0.65-6.4 Гбайт. Для больших винтов можно применить программу HddSpeed v.2.4, в ней тоже есть функции ремапа (Try to repair/reallocate found defects) и русское описание (Рис. 6).

Рис.6. HDD Utility. Процесс скрытия дефектных секторов

Рис. 7: Ремап с помощью HddSpeed

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

Альтернативные методы скрытия дефектов

Как уже было сказано выше, ремап обладает недостатком, проявляющимся в виде рывков головками в резервную область. При этом винт может щелкать во время работы, а на графике будут видны провалы. Это может сильно затруднить, например, работу с потоковым видео. Особенно сильно это проявляется, когда ремапы расположены в начале диска: при этом головки проходят максимальный путь, и задержки на их перемещение очень велики. Поэтому, в некоторых случаях ремап может оказаться нецелесообразным, а вместо него лучшим выбором будет скрытие дефектов средствами файловой системы. Например, обычным высокоуровневым форматированием format.com, программой Scandisk или Norton Disk Doctor. Только решиться на этот шаг нужно сразу после проверки поверхности, не пытаясь сделать винту ремап. Иначе, при успешном его проведении, вернуть бэды назад и очистить таблицу дефектов будет нельзя. Ремап - однократная процедура, и если контроллер винта перенес адреса секторов в резерв, вернуть их назад будет уже невозможно.

Другая альтернатива ремапу - обрезание пространства в конце диска с помощью технологии HPA (Host Protected Area), имеющийся у всех современных винтов. При этом винт будет определяться в BIOS на меньший объем, а все беды, если они расположены в конце, останутся "за бортом", и станут невидимы. Этот метод следует применять к накопителям, имеющим много бэдов в конце диска (к сожалению, такое бывает редко). В любой момент винту можно вернуть его полную емкость и, соответственно, бэды тоже. Сделать это можно программой MHDD (консольные команды HPA и NHPA). Если винт старый, и не поддерживает HPA, то можно создать отдельный логический раздел, причем, не только в конце, но и в любом другом месте диска, и расположить его так, чтобы большая группа бэдов оказалась в нем. Это делается программой Fdisk. Такой раздел можно забить ненужными файлами, а можно вообще его не форматировать, присвоив ему статус "non-dos" (тогда он станет невидим для системы).

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

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

Особенности, глюки и профилактика

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

Аналогичные проблемы были у старых винчестеров Western Digital в 1995 году, но бэды у них появлялись в конце диска. Нередко встречается и такой глюк: винт просто перестает определяться в BIOS. Причина - ошибка программиста, писавшего прошивку, в результате которой винт сам себе портит служебную зону: из-за переполнения внутренних логов ошибок происходит затирание соседних областей, без которых HDD отказывается работать. Как правило, этому предшествуют какие-нибудь сбои, например, появление BAD-блоков или неудачный разгон шиной. Именно так и было с серией IBM DTLA: ошибка таилась в SMART, и если он был включен - винт умирал. Похожие проблемы были у Seagate, Fujitsu, и многих других. Поэтому нужно следить за выходом обновлений для своего винчестера, и регулярно "перешивать" их. В отличие от прошивки BIOS материнских плат, делать это нужно обязательно - если фирма выпустила прошивку, то это неспроста: возможно, был найден серьезный баг, устранение которого избавит от неприятностей в будущем.

Среди многих пользователей до сих пор распространен слух о том, что некоторые винты умирают от "неправильного" низкоуровневого форматирования, например программой, встроенной в BIOS материнских плат. Пока не удалось найти достаточных доказательств этому, однако существовала модель винта с дырой в микрокоде, способной привести к подобному эффекту. Это Fujitsu серии TAU (приблизительно 1996 год), некорректно обрабатывающий ATA-команду 50h: именно ей BIOS производит универсальное форматирование, и эта команда входит во многие программы а-ля HddSpeed. Поэтому не стоит искушать судьбу, форматируя эти винты малоизвестными утилитами или из BIOS.

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

Еще одна разновидность программ, которые можно применять только от производителей - переключалки режимов DMA: изменения между UDMA33/66/100 - это изменение части микрокода винта, поэтому попытка применить чужую утилиту может привести к порче прошивки, а следовательно - к глюкам с непредсказуемыми последствиями.

Вот и все. Будем надеется, что этот материал помог вам. Но помните: любое количество BAD-блоков на винте - это повод для обращения по гарантии. А невозможность их убрать без ухудшения характеристик диска - повод для обмена устройства. И если вам удастся убедить в этом продавца - считайте, что скрытие BAD-секторов удалось на все 100%. Только не забывайте про профилактику и, возможно, вам и не понадобится ничего скрывать.

Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: