Жёсткие диски, SSD, флешки, RAID-массивы, ленты. Изучение, восстановление данных, ремонт.
PC 3000: зависающие HDD на примере Western Digital
Большинство современных дисков разных производителей имеют общую одинаково проявляющуюся неисправность: по звукам диск запускается как обычно, но при этом либо очень медленно читает данные, либо долгое время висит в состоянии BSY, а после 2-3 минут иногда выдает ошибку, а иногда висит до бесконечности. В качестве примера взят диск модели WD20EARS. Для доступа к данным пользователя используется комплекс ACE Lab PC-3000. В конце заметки видеоролик с демонстрацией всех описанных действий.
Рассмотрим пример зависающего диска. Сначала подаем на него питание. Слышно, что диск калибруется нормально, не стучит, никаких посторонних звуков не выдает, но при этом в готовность не выходит. То есть в регистре состояния индикатор BSY горит постоянно.
При этом, через какое-то время, можно услышать, что диск еще раз перезагрузился. Такая ситуация с не запуском жесткого диска происходит от того, что микропрограмма уходит в бесконечный цикл, то есть не завершает какую-то из важных процедур инициализации. При этом, с аппаратной точки зрения (головки, поверхности), все работает.
Чтобы решить этот случай, нужно войти в утилиту Western Digital в, так называемом, режиме kernel.
Примерно через минуты две, жесткий диск вышел в состояние ошибки. Он погасил индикатор BSY (бизи) и зажег индикатор ERR (ошибка). При этом, тип ошибки выдал ABR.
То есть диск не запустился. Попробуем запустить утилиту.
Утилита у нас сразу показывает режим kernel.
Нажимаем автоопределение, диск автоматически определяется(Sadle G6).
И можно нажать «Запуск утилиты».
Интересно, тут «Debug Stop Code» RESET TIMEOUT. Получается, что диск остановился по истечении таймаута на запуск. Он должен был запуститься за какое-то время и диск не запустился.
Для того, чтобы решить данный случай нам нужно вызвать следующую опцию: «Тесты → Работа с ПЗУ → Блокировать доступ к модулю 02».
После этого будет произведена правка ПЗУ.
Диск в состоянии с блокированным доступом к модулю 02 не запустит большую часть своей микропрограммы. Но, так называемый, оверлей (overlay) будет запущен и это позволит зайти в режим утилиты «Normal».
Давайте посмотрим что будет. Сначала отключаем питание.
Потом включаем. Диск раскручивается, слышна калибровка и он выходит в готовность.
Давайте прочитаем его идентификацию.
Правый щелчок → «Читать паспорт».
Видно, что он определился не своим родным серийным номером, а, если говорить жаргонным названием, хузом ( XYZ ).
Из-за того, что мы блокировали доступ 02, то серийный номер из модуля 02 не читается. При этом оверлей запускается. Теперь можно зайти в утилиту, но уже в режиме «Normal».
То есть не «Kernel» подсвечивается, а «Normal». И выполняем запуск утилиты.
В режиме «Kernel» доступ к служебной зоне нельзя реализовать, а в режиме с блокировкой модуля 02 нам уже доступна служебная зона.
Для начала нужно создать ее резервную копию «Тесты → Служебная информация → Резервирование ресурсов HDD → Ok → Ok». Я обычно треки не сохраняю и снимаю галочку «Треки SA».
Жмем последний раз «OK» и пошло копирование. Тут есть одна интересная ошибочка. Вместо модуля 0D у нас модуль 02.
Это и есть механизм блокировки, когда мы модуль 0D заменяем на модуль 02. Поэтому модуль 02 у нас не копируется с поверхности и в этом бэкапе будет отсутствовать. Но сейчас мы это решим немножко другим способом.
После того, как процесс резервного копирования завершен, нам нужно прочитать оригинальный модуль 02 на всякий случай. Для этого мы идем в «Инструменты → Каталог модулей».
В открывшемся списке видно, что у нас есть модуль 02.
Нам нужно его прочитать. Он читается, потому, что чтение идет в режиме ABA.
Можно менять переключатель и читать по ABA или по ID.
Если сейчас по ID поставить, то этот же самый модуль не читается, пишет «Invalid file ID». Программа пытается читать модуль 02, а реально там лежит модуль 0D.
Переключаемся снова в режим ABA и сохраняем модуль.
В утилите есть опция под названием «Решение проблемы ‘slow responding’».
Это как раз относится к теме нашего видео — о зависающих дисках. Нажимаем на эту опцию. В данном случае программа будет писать модуль 02, а если указать режим ID, то запись будет вестись куда-то не туда, потому, что мы сделали блокировку. Поэтому мы указываем «Запись по АВА».
Чтобы обе копии исправить ставим две галочки. Жмем ОK.
Когда процесс завершится, мы увидим, что программа пытается сначала прочитать по ID, потом идет на чтение по ABA, затем идет правка.
Давайте попробуем сделать обратно, а именно — разрешить доступ к модулю 02.
Идем в «Тесты → Служебная информация → Работа с ПЗУ → Разрешить доступ к модулю 02». Теперь нужно на всякий случай посмотреть все ли разрешилось.
Нажимаем «Инструменты → Просмотр и редактирование ресурсов HDD». В открывшемся диалоге выбираем ROM и в модуле 20B у нас вся информация.
Это можно проверить переключившись в протокол.
Там есть строчка «Чтение Flash ROM dir (Ext)…. Ok (Active)». Это означает, что у нас правильный модуль 20В. Если бы «Active» было строчкой выше, то значит, модуль 0В был бы правильный.
Далее нам нужно в модуле 20В посмотреть опцию «WD Marvel ROM Flash dir».
После выбора опции мы видим модуль 0D.
Это практически победа! Теперь выключим питание и попробуем снова включить. Диск выходит в готовность. Теперь нажимаем «Инструменты → Редактор сектора → Да → Да».
И после этого видим данные пользовательской зоны!
Первый пример получился! На сегодня все, продолжение следует.
Источник
Slow responding wd как починить
Комса
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модераторуКоды ошибок WD || Коды ошибок WD Обновлено 18.01.2013 Ссылки на файловые ресурсы «Лампочки» ATA терминала Разное (статьи, описания, информация с форумов) FAQ по действиям с накопителями WD Для Любителей чистить P G Relo листы Для любителей очистки G и Relo листов Ошибка чтения 1 трека по 0 голове, статус — DISK_DAM_ERROR Ошибка чтения 1 трека по 1 голове, статус — DISK_DAM_ERROR Ошибка чтения -256 трека по 0 голове, статус — DISK_DAM_ERROR Ошибка чтения -256 трека по 1 голове, статус — DISK_DAM_ERROR Ошибка чтения модуля ID04, статус — RSC_ALLOCATION_NO_CONTI_BUFFER (Модуль ID04 прочитан посекторно) Отключение 0 головы на Mariner от Cartmann Восстановление транслятора без РС3000 от Kickman
подробнее Инструкция по скрытию бэдов сканом по логике Неудачно отключились головки, возвращение диска в исходное состояние Расшифровка ошибок в программе WDMarvel Условия распространения WDMarvel (обновлено) Def_WD TREX HDDSuperTool WD U-Command Tool Nazyura WD tools WD SSHD drives DRT WDRepairTools WDR ScriptsВажно! Инструкция по чистке контактов на плате HDDКак это сделано.. что есть # hddoracle.com Индикатор состояния HDD HDD: Служебки, ПЗУ, модули, лоадеры, firmware, flash Data Lifeguard Diagnostic Гарантийное обслуживание и RMAТемы по проблемам логического ремонта разделов HDD и подъёма информации: Восстановление разделов и информации на HDD Железные проблемы с HDD (диском, хардом, веником S.M.A.R.T.Офтопик на поболтать на HDD темы ATA-Terminal Магнитный флейм Бизнес-вопросы сферы восстановления данных и ремонта HDD1 часть | 2 часть | 3 часть | 4 часть | 5 часть | 6 часть
falcon92 Это у вас «slow responding». Программа диска постоянно отвлекается на плохочитаемые сектора — умирают, или повреждены, или грязные головки. Обработку ошибок можно отключить правкой модуля 02 руками в hex редакторе, из бесплатных утилит умеет это. Сам её не пробовал. Метод нужен для вычитывания данных. Вам, я так понимаю, это уже не нужно?
Если диском планируется пользоваться дальше, ИМХО, нужно пускать селфскан, по его результатам возможно отключать плохие головки.
Данке за внимание. : )
Данные не нужны, ничего важного там уже нет. Ага, диск таки хочется пустить под всякие нужды Подробнее.
Редактором подправить, такой способ имеется ввиду? (никсы лень ставить. Вряд ли, если примонтирую диск, как физический в vbox-е, подхватит)
Какие-нибудь действия после slow responding-а? Возвращать 02 модуль назад, после отключения головы?
1ую голову физическим сканированием прогнал, пока ждал ответов. Ну, так. Отличие от стокового P-list-а: 288 (10%), треков:144 (49%) против 437 (14%), треков:144 (32%) То есть, как я понимаю, голова 1 цела. 2-3 вообще гонялись без особых проблем вроде. Досконально не тестил. Вообще странно, что G-List был не пуст, хотя Realloc sec count был пуст (и я не забэкапил перед удалением). Если я правильно понимаю, G-list отвечает за кол-во realloc-ов при использовании харда, т.е. «бэды»
Для селфскана нужно что-то дополнительно? Или считываем из SA и «Подготовка SA к Self-scan», «Запуск Self-Scan», предварительно сдампив всё, что можно с харда? И, как я понимаю, он может занять пару суток, если не отвалится где-нибудь?
Если диск не на данные, можно с этим не заморачиваться. Единственное, в чем может быть профит: это отключить обработку ошибок, погонять сканирование, потом посмотреть по записям в Г-листе, какая голова болеет. Точно не будет случайных записей.
Если на скан, то понадобится полный скрипт: посмотрите в редакторе скрипта селфскана, там скорее всего
8 шагов. Это заводская заглушка.Она вам ничего не даст.
Это у вас маринер?
Добавлено: скрипт селфскан для маринер — это полный
Всего записей: 984 | Зарегистр. 18-03-2008 | Отправлено:13:47 19-12-2016
Если диск не на данные, можно с этим не заморачиваться. Единственное, в чем может быть профит: это отключить обработку ошибок, погонять сканирование, потом посмотреть по записям в Г-листе, какая голова болеет. Точно не будет случайных записей.
Ну как. По идее, на данные : ) Просто не самые важные. Скажем так, цель сих плясок с бубном — вернуть его к жизни, даже без одной из голов. Благо, наличие софта +- позволяет сделать из него «довесок».
Да, маринер. Благодарю. У меня из SA грузится на 36 шагов. Очень похожий на то, что вы дали.
Я так понимаю, по симптомам, рандомности и пропадающим после перезаписи pending-ам при вполне красивом smartе это скорей всего будет голова и тут уже через P-list не выехать. Только отключение нужной?
Я так понимаю, какого-то внятного мана нету по софтинке и ее пунктам, исключая CTRL+F и пошел гулять по всем 6-и веткам данной темы? (: Ибо некоторые пункты, вроде того, что отвечает за транслятор, форматирование и калибратор (и им подобные) и в каких случаях их нужно применять не очень понятны. (:
Цитата:
Ничего странного — в 05-м атрибуте до 200 записей в глисте не показывается.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору falcon92 отключение флага обработки ошибок может помочь вычитать данные. Диск перестанет отвлекаться на обработку ошибок. Оставлять этот флаг выключенным при обычной работе не следует.
Если у вас полный скрипт — в вдмарвеле «подготовка и запуск селфскан» -а далее просто ждать окончания (это 00DC=Тест Xmit Blink с функцией 0002). Питание и сата-кабель не трогать до окончания СС.
Если нужно почитать подробностей: переключитесь в «версия для печати» — вверху справа и поиском по «селфскан». Где-то в третьей-четвертой частях темы, когда автор WDmarv был на форуме очень популярно многое обсуждалось.
На hddoracle в разделе про WD тоже многое довольно популярно описано.
Всего записей: 984 | Зарегистр. 18-03-2008 | Отправлено:14:43 19-12-2016
falcon92
Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору E123 Да, я так и курю инфу через версию для печати. Жаль, что не всё в одной ветке. (: Благодарю за помощь, отключил обработку ошибок, запустил SS Буду ждать результатов.
Всего записей: 57 | Зарегистр. 30-10-2011 | Отправлено:15:02 19-12-2016
— еще раз: не надо, верните обратно 02 модуль после скана. Этот метод не для ремонта. Только для вычитки. Иначе, если диск снова начнет сыпаться, вы можете узнать об этом, только когда уже будет поздно.
Всего записей: 984 | Зарегистр. 18-03-2008 | Отправлено:15:16 19-12-2016
falcon92
Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору E123 Мдя, глаза мне точно нужно мыть. Невнимательный. Извиняюсь.
Всего записей: 57 | Зарегистр. 30-10-2011 | Отправлено:15:21 19-12-2016
wmf
Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Добрый день. Диск WD5000LMVW-11VEDS0, плата 2060-771949-000 рев. P1. Какая плата SATA может подойти. Спасибо.
Всего записей: 18 | Зарегистр. 23-07-2003 | Отправлено:16:08 19-12-2016
Если на скан, то понадобится полный скрипт: посмотрите в редакторе скрипта селфскана, там скорее всего
8 шагов. Это заводская заглушка.Она вам ничего не даст.
Это у вас маринер?
Добавлено: скрипт селфскан для маринер — это полный
То Е123: а этот скрипт для WD3200BEVT-00A0RT0 подойдет?
Всего записей: 426 | Зарегистр. 13-03-2007 | Отправлено:23:24 20-12-2016
E123
Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Mihatut должен
Всего записей: 984 | Зарегистр. 18-03-2008 | Отправлено:23:31 20-12-2016
Geonik
Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Здравствуйте уважаемые гуру! Умер по БЭДам WDC WD15EARS-00MVWB0.
Выбрасывать жалко, а потому уже неделю мучаю! Скорость записи упала до 10 Мб/сек — скорость восстановил очисткой G-list и RELO-list.
Что удалось выяснить с помощью Виктории и WD Marvel Demo: 1. БЭДы появляются в КОНЦЕ диска в РАЗНЫХ местах (начиная с 1Тб и до конца ЖД), выяснилось после неоднократной очистки G-list и RELO-list и многократного прогона дефектного участка ЖД на запись и чтение с ремапом. 2. Подавляющее большинство БЭДов идут по головке 2. 3. Задержки и ошибки появляются только при тесте на чтение! Тест на запись проходит почти без задержек.
Варианты, которые приходят в голову ламеру: 1. Умерла 2 голова на чтение — отключить. 2. Обрезать ЖД на 1Тб.
Прошу помощи в реанимации больного!
P.S.: Будьте так любезны, поделитесь WDR! P.P.S.: WD Marvel 2.3 не видит 2/3 дефектов P-list — 2416 дефектов на WD Marvel 2.3 версии против 9071 на WD Marvel 3 Demo.