Bad сектора на HDD

Решаем проблемы с винчестером сами

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

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

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

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

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

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

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

запилы на магнитном диске

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

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

Примечание:

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

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

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

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

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

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

ремонт hdd

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

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

Программы

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

fjerase, wdclear, zerofill.

Zerofill качается здесь. У многих сейчас пошла мода «обзывать» подобный метод работы с hdd не иначе, как «низкоуровневое форматирование». Ну, ладно (все равно, программа — только заполнит «0»-ми, не более).

Для работы с физическими дефектами (и для теста поверхности hdd), мы рассмотрим работу с программой Victoria for DOS 3.5.

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

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

Работа с Victoria DOS

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

Поэтому, берем чистую болванку CD, пишем на нее загрузочный образ, и загружаемся с этого 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, этот показатель может быть равен только «нулю»):

good

Для появления этого экрана, мы нажали «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» — строку.

Ignore bad blocks

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

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

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

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

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

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

Примечание:

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

Примечание 2

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

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

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

проблемы в контроллере жесткого диска

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

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

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

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

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.

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