Жесткий диск wd команды терминала очистить relo лист
Смарт показывает что на жестком около 800 пендингов, ремап она сделать не может » |
А ему некужа уж ремапить, место в листах кончилось. По кол-ву записей на скрине ж видно. Более того, в СМАРТе отображаются не все записи о дефектах поверхности.
Можно добавить что и сам винт был "обрезком". Т.е. у него сходу была отключена голова или же понижена плотность.
Сам винт-то бывший WD20EARS.
Инфу то не так уж сложно восстановить с него.
Достаточно очистить ему Relo-лист и запретить добавлять в лист новые записи. Тогда винт сможет отдать данные в нормальном режиме.
Но скорее всего вы сами не сможете это реализовать, т.к. нужен технологический софт.
Не имея его или не умея им пользоваться - можете натворить им бед немалых винту.
Так что если нужна инфа с болезного - лучше обратиться к специалисту (которые и данные вынет с него, а может и винтец вылечит).
-------
Восстановление информации и Ремонт HDD на АПК РС3000-UDMA + DE RE, PC3000-Express + DataExtractor + SSD Edition.
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.
У WD20EARS размер сектора = 4096 байтов, Это хард Advenced Format. Никогда в жизни Victoria, как и другие общедоступные утилиты не затрёт/переназначит сектор, у которого нестыковка по ECC… Уже опух каждому объяснять почему так происходит…
LordSangvinius, если у харда нет серьёзных проблем (царапин…), то запросто такая беда на подобных хардах лечися. --- Надо просто из-под DOS в дисковом редакторе для начала скопировать ~ 100 MiB в файл (это совссем немного), а затем вернуть эти секторы назад. Посмотреть чем дело закончилось….
И не такое число пендингов в ноль уходило… --- Тут… --- как повезёт…
Если хотите побороться, то поехали…
Скачайте дисковый редактор DMDE Free Edition 2.10.2
DMDE - DM Disk Editor and Data Recovery Software
Console for DOS
Редактор запишите на загрузочную флешку с DOS
Запустите DMDE и выбирите (как физическое устройство) проблемный ушастик WD15EARS…
Сервис ===> Копировать секторы…
Заполняете шаблон
Источник --- хард
===================
Начальный сектор = 0
Конечный сектор = --- само посчитается
Число секторов = 2048 --- это и есть 100MiB
Приёмник
=======
Файл на флешке или ещё где.
И OK
Если при копировании возникнут ошибки, то игнорируйте их все. --- Повторять бессмысленно…
По концу процедуры копирования. Делайте наоборот --- возвратите данные на Родину.
Копируете секторы из файла на хард, начиная с LBA=0
В этой, казалось бы бессмысленной процедуре скрыт глубокий смысл…
После этого вновь показываете рапорт SMART.
Надо копировать из-под DOS, поскольку при работе в Windows хард может отвалиться --- Windows не ждёт, и если хард малость призадумается, он запросто выбросит хард из системы. А DOS будет ждать до второго пришествия…
ЗЫ Будьте внимательны. При работе не промахнитесь с хардом, чтобы не скопировать из файла на не тот хард. Этим можно запросто затереть данные на другом харде, отличном от болезного WD15EARS.
Просто надо не обьяснять на пальцах, а доказывать реально. Я тру эти винты обычным стиранием без проблем и общедоступными средствами ж (никаких хитрых спец. утилит).
Тот же PC3000DiskAnalyser является тож общедоступным средством и доступен для скачивания.
Мне например, не хочется занимать комплекс РС3к на такие рутинные операции. (Серьёзная вещь - должна решать серьёзные проблемы ж.)
Прям щас стоит трётся WD12EARS (завтра отдавать его клиенту) и - ноу проблемс.
P.S. А какой у размер сектора и у какой модели - я ж в курсе.
-------
Восстановление информации и Ремонт HDD на АПК РС3000-UDMA + DE RE, PC3000-Express + DataExtractor + SSD Edition.
Последний раз редактировалось misha2, 05-03-2015 в 22:18 .
Я тру эти винты обычным стиранием без проблем и общедоступными средствами ж (никаких хитрых спец. утилит). Тот же PC3000DiskAnalyser является тож общедоступным средством и доступен для скачивания. » |
Вроде ж и средств, возможностей для этого предостаточно ж.
Но в случае с WD вспомнив характерную вещь как slow responding + приведённый скрин СМАРТа, начинаем прозревать "откуда ноги растут" у проблемы по восстановлению инфы с него.
Давно известно о проблеме чтения инфы с винтов WD при показаниях аттрибутов 197 и 198. Смотрим в приведённый скрин LordSangvinius -ом, и всё становится ясно ж.
Как раз ясно то, что первый шаг лежит в плоскости работы с Relo-листом, находящимся в СА данного WD.
Так что сейчас, в данный момент первый шаг - решить проблему заполненности Relo-листа, которая в свою очередь может оказать большое влияние на корректность восстанавливаемых данных в первую очередь, а скорость восстановления - во вторую очередь.
(Постарался обьяснить доходчиво - если ещё чтось непонятно, спрашиваем. )
-------
Восстановление информации и Ремонт HDD на АПК РС3000-UDMA + DE RE, PC3000-Express + DataExtractor + SSD Edition.
теперь система винт не видит, виктория из под доса тоже отказывается его определять » |
Основная причина такого - заполненность Relo-листа у него (т.е. техническое состояние, а не программные ошибки).
Раз у винта Relo-лист заполнялся уже, то на время вытаскивания данных нужно было в запретить добавлять записи в Relo-лист через правку паспорта.
Это не было сделано, винт продолжал мучаться и в итоге получен результат с полным затыком болезного винта.
Более того, сейчас возможна ситуация когда винт уже совсем не способен самостоятельно выходить на АТА-интерфейс, и приводить его в порядок придётся уже через терминал.
Но чтоб вытащить с него данные, можно вопрос (хоть на время) решить программным путём, описанным выше ж.
Из аппаратных решений единственное что нужно - это осмотреть/почистить контакты с обратной стороны платы, ведущие в гермоблок (как к БМГ, так и 3 шт. контактов к двигателю).
Соб-нно, не было правки паспорта на запрет добавления дефектов и очистки уже занесённых записей о дефектах в СА и все советы программных вытаскиваний инфы редакторами, вообще с доступами в ЮА - привели винт в состояние полного ступора.
Теперь решений без доступа в СА винта - попросту нет.
-------
Восстановление информации и Ремонт HDD на АПК РС3000-UDMA + DE RE, PC3000-Express + DataExtractor + SSD Edition.
Компания Western Digital – одна из немногих, уцелевших на рынке производителей HDD. И в сегодняшнем материале мы расскажем вам об одной интересной опции, связанной с ремонтом этих дисков. Разумеется, для специалистов в области DataRecovery это не является откровением, но для граждан далеких от предмета, надеемся, будет любопытно
Полагаем, всем (или почти всем) известно, что WD, и не только они, идя по пути максимального удешевления выпускаемой продукции, последние несколько лет только укрепилась в традиции распаивать мост USB – SATA прямо на плате электроники диска. Это вносит некоторые осложнения в процесс организации доступа к пользовательской информации. И на примере недавно выполненных работ по реанимации WD My Passport мы расскажем вам о некоторых из них.
Итак, на операционный стол в коматозном состоянии попал WD10JMVW-11S5XS1 – диск семейства Firebird. Со слов клиента – сначала диск стал крайне медленно работать, потом был отформатирован и заработал нормально, но по мере заполнения его данными – умер окончательно. Только вот перед этим, резервной копии важных данных сделано не было.
После подачи питания диск определяется в системе, но при малейшей попытке что-либо с него считать – зависает и отваливается.
Програмный ремонт жёстких дисков HDD (Програмный (и не только) ремонт классических жёстких дисков HDD /Seagate /Samsung /IBM /Hitachi /HGST /Western Digital)
Програмный ремонт жёстких дисков HDD
Програмный (и не только) ремонт классических жёстких дисков HDD /Seagate /Samsung /IBM /Hitachi /HGST /Western Digital
Tronix, у меня ушло около двух лет на то, чтобы фильтровать на эту тему весь интернет, читать тысячестраничные форумы (иногда - закрытые - через кэш поисковика), выгребая из тонн флуда крупицы здравого смысла, поднимать из веб-архива мёртвые сайты, расшифровывать дремучий сленг, шариться по мутным сайтам и файлопомойкам, ночи напролёт чахнуть над непонятными мануалами. Если этот FAQ поможет людям сэкономить эту пару лет и сходу починить хотя бы несколько дисков - я буду считать, что я не зря старался.
И да, "классические" Барракуды можно привести в состояние "прям как с завода" (если головки в принципе живые, конечно) при абсолютно любых программных проблемах, хоть с совершенно пустой служебкой. Если, конечно, действовать по инструкции, которую и следует написать (черновик есть).
Вклад в сообщество
Немного об устройстве микрокода WD
На любом диске, в процессе изготовления и эксплуатации, есть или появляются дефекты. Те, которые были выловлены на заводе, на завершающих стадиях сборки и тестирования, заносятся в т.н. “заводской” дефект-лист. Те, которые появляются в процессе эксплуатации, попадают в пользовательские дефект-листы.
Увидев нестабильно читающийся сектор, диск «понимает», что жить этому сектору осталось недолго и заносит его адрес в так называемый RELO-list. Если ошибки будут повторяться, то данный сектор будет помечен как BAD и исключен из трансляции. Но пока ещё не исключен – фоновые процессы самотестирования будут проверять его снова и снова.
Всё бы хорошо, но очень многие версии микрокода современных WD имеют забавную ошибку. Заключается она в том, что если «подозрительных» секторов стало больше, чем отведённое под них место в RELO, то происходит его, этого самого RELO, порча. Последствия этого самые разнообразные – начиная от существенной потери производительности, и заканчивая невозможностью корректной инициализации диска (RELO является модулем не уникальным, но критичным для работы по логике).
Если гора не идет к Магомету…
Как же быть? По USB-интерфейсу диск недоступен, а по SATA подключиться нет никакой возможности (см. запрет на отдирание стикера). Но способ есть.
На фото выше вы видите технологический разъём диска WD, слева от USB. Обычно такие разъемы служат для установки перемычек, меняющих режимы работы диска. Но немногим известно, что этот разъем реализует также функции… диагностического терминала COM-порта. Через который можно «общаться» с диском в технологическом режиме, подавая команды и получая на них ответ.
Поломанный диск WD, с подключенным к нему COM терминалом
Следует отметить, что это не является COM-портом, в привычном нам понимании. Необходим преобразователь уровней TTL в RS232. Удобнее всего использовать преобразователи на основе контроллеров Marvel и Silicon Image, имеющих USB-интерфейс и образующих в системе виртуальный COM-порт.
Конечно же, работа по COM-порту накладывает свои ограничения. Например, таким образом нельзя получить доступ к пользовательским данным, но это и логично – попробуйте скопировать хотя бы гигабайт данных на скорости 115200 bps. Все операции с диском также происходят достаточно медленно, но как говорят – познавший жизнь не торопится.
Подключившись через COM-порт к диагностическому терминалу и запросив Get Dir мы получили список модулей служебной информации
Вот, ради чего мы так старались. Доступ к служебной информации получен!
Остальное – дело техники. Быстрый анализ только подтвердил предположение об ошибках в модуле id32. После исправления этих ошибок, диск проинициализирован корректно и мы смогли скопировать с него ценную для клиента информацию штатными средствами, а заодно и зарезервировать себе копию (теперь уже) исправной SA, чтобы облегчить работу в будущем.
Остаётся добавить, что описанная выше проблема является типовой не только для WD, но и для других накопителей. Как пример – небольшой материал из рубрики «вопрос-ответ» сайта «Хардмастер» про восстановление WD My Passport.
3.11.2012 22:35:51: Начато чтение треков.
03.11.2012 22:35:55: Ошибка чтения 1 трека по 0 голове, статус - 048151-51-51
03.11.2012 22:42:09: Успешно считано 191 треков
03.11.2012 22:49:08: Начато чтение треков.
03.11.2012 22:49:12: Ошибка чтения 1 трека по 1 голове, статус - 048151-51-51
03.11.2012 22:56:05: Успешно считано 191 треков
Подскажите пожалуйста, насколько важно прохождение сканирования за один раз?
Можно ли останавливать, а затем продолжать, скажем на другой день с прерванного места?
Свет дают только 12 часов в день. Так уже три дня.
Взялся за другой ВД- WD3200AAJS-55RYA0.
Система на нем глючит, форматирование фирменной утилитой от ВД- выдает ошибку 0112,
Виктория ошибок не находит, badlba при верификации находит 9 ошибок ЛБА.
Исключение их в ВДМарвел не помогает- пересчет транслятора с учетом этих 9 ошибок проходит но дальше не
проходит форматирование с учетом П и Ж листов( в нем эти 9 ошибок)-
на 41 проценте прохождения форматирования происходит сброс на 0 процентом .
и так до бесконечности зацыклено.
Буду ли я прав если скажу что и в этом случае нужно запускать сканировае по физике?
Чисто ремонт наличными средствами диска WD выходящего в готовность:
1) Считать и сохранить все ресурсы с диска в отдельную папку
2) В WDMarvel "Работа с дефектами" далее "Очистить G-List и RELO-List"
3) В отдельное место для сравнения потом сохранить отдельно модуль 0x32 - тот самый RELO-List соответственно чистый после "Очистить G-List и RELO-List"
4) Пересчет транслятора с учетеом P-листа и перезапуск микропрограммы
5) Далее будут варианты.
Не нашел в WDMarvel так что переходим в WDR3.0 и запускаем "Test" - "Auto add BB to G-List" и ждем окончания. Сам не проверял но если процедура работает правильно то по окончании в G-листе будут находится найденные ошибки.
Немного отвлечемся, все это будет верно и не только для WD. С точки зрения наших действий ошибки могут быть двух типов - ошибки чтения и ошибки записи. Вся процедура ремонта проводится последовательно - сначала мы собираем все ошибки по записи, а потом уже ошибки чтения. Ошибки по записи в свою очередь можно разделить на два типа - те что диск сам может спрятать - через G-лист - и те что не скрываются диском самостоятельно. Например отсутствие адресной метки сектора - ошибка AMNF - не даст ничего записать в сектор и скорее всего этот сектор в G-лист не попадет хотя и должен будет нами самостоятельно впоследствии добавлен в P-лист как дефектный.
То есть в первую очередь добиваемся того чтобы после полного прохода записью ошибок не оставалось. Имеем на руках
а) Victoria 4.46
б) WDR3.0
в) WDMarvel
Скажу еще раз что не уверен в адекватности WDR3.0, но есть такая программа от самих WD, называется "Western Digital LifeGuard Diagnostic - DLGDIAG for Windows". В ней эта возможность пройтись записью с занесением дефектов в G-лист есть. По-моему идет как пункт "Заполнение нулями" или что-то вроде этого.
То есть добавляем
Я бы даже посоветовал пользоваться именно ей, работает быстро и безопасно, единственный минус - не работает через порты а только со штатно подключенными к системе дисками.
Следует обратить внимание на то что емкость G-листа достаточно маленькая, максимум вроде на каких то моделях ~1500 позиций. И если в процессе записи G-лист будет забит под завязку последующие скрытия в него будут абортиться. Соответственно нужно будет в любой программе прочитать G-лист, убедиться что он заполнен, перенести дефекты из G в P-лист и после перезапуска микропрограммы сделать пересчет транслятора с учетом P-листа. Перезапустить микропрограмму. Запись повторить с начала.
После любых действий типа переноса и пересчета перезапуск микропрограммы ОБЯЗАТЕЛЕН перед любыми другими действиями.
Закончим п.5 тем что все ошибки влезающие в G-лист мы собрали и идем дальше. Естественно перезапуск МП
6) Если по записи ошибок не осталось - переходим к следующему пункту. Иначе - требуется локализовать нескрытые ошибки и уже по этим местам, взяв с запасом естественно, пройтись тестом по физике. Найденные ошибки добавить в P-лист. Пересчитать транслятор с у четом P-листа и пройтись записью по логике. Повторять процедуру до исчезновения ошибок.
7) Записью прошлись, ошибок нет.
Можно первым делом пройти в Виктории верификацией с в включенной опцией "Erase". Найти проблемные места и погонять программу по ним несколько раз. Потом посмотреть G-лист. Если не пустой - либо перенести сразу секторные ошибки в P-лист, пересчитать транслятор и еще раз пройти записью/верификацией, либо все же эти ошибки закрыть треками. Оценивать придется самостоятельно. Если ошибок проявится немного то просто перенос G-P и дальнейший формат с учетом P-листа сразу даст рабочий диск.
Ошибки по чтению тоже могут быть второго типа, т.е. диск самостоятельно не может их скрывать в G-лист. С такими ошибками так же наверное придется потом бороться тестом по физике. Медленно. И после каждой модификации P-листа опять пересчет/запись по логике или формат.
Диски от WD ( как и Toshiba к слову ) часто страдают по другому. У них ошибки могут идти большими областями, по несколько тысяч треков, и в этом случае ремонт нецелесообразен или очень будет длиться очень долго.
Для тех, кто все же будет этим заниматься - Ваши действия со стороны будут выглядеть как подсознательное тяготение к мазохизму А для этого можно придумать что-то более интересное.
P.S. Забыл указать - WD может заполнять и RELO-лист за компанию к G-листу, у диска своя логика, не всегда адекватная. Так что его после каждой операцией с G/P листами RELO-лист тоже придется чистить. В WDMarvel "Очистить G-List и RELO-List".
Контролировать пустой он или нет можно считав этот модуль и сравнив его с модулем сохраненным в п.3. Может и чистить ничего не надо будет.
Зря придумываем велосипед. Попросите автора WDMarvel, он прикрутит в программу большую кнопку "ПОЧИНИТЬ ВСЕ".
Я даже вижу один из вариантов исполнения.
1. Очистка всех листов с дефектами.
2. Очистка логов и транслятора.
3. Перезапуск.
4. Запись 0x28 модуля содержащего только тест 0xD1 и тест в котором формируется из логов скана P-лист.
И все. Дальше руками пересчет транслятора, уменьшение емкости если потребуется и формат.
Если переполнения логов по какой-то из голов не будет - диск живой.
Вот как-то так
В 99% случаев ошибки связаны с повреждением поверхности.
Рело-лист не трогаем.
Хард сам перепроверит и переназначит кандидатов при записи и очистит рело-лист.
G-лист нужно проанализировать, на характер ошибок.
Если все по одной голове, скорее всего ее надо отключить.
Если характер, один два сектора в последовательных треках, это радиальные царапины, Чинить диск вобщем-то уже бесмысленно.
Ну разьве помучить или обманув, кому-то впарить, пока дальше не посыпался.
Если компактные группы дефектов, это круговые повреждения.
Нужно обьеденить эти дефекты в треки, добавить треки, чтобы соединить близкие диапазоны дефектов, и добавить по штук 20-50 с каждой стороны от поврежденого места. чтобы головы туда не поподали.
При этом полезно анализировать и зонные таблицы, чтоб не трогать живые зоны.
Если дефекты безсистемно, то проблемы скорее всего с коммутатором, актуатором, смещение блинов, это не лечится. Или проблемы с платой, уходом адаптивов. Тут махнуть плату и запустить SS, где есть.
А 0x32 чистим, чистим и еще раз чистим.
Очистка RELO-листа, недавний случай. Могу привести для примера. Диск 2,5" Denaly 320 при запуске стучит головами и тушит движок. При этом на диске кроме частично заполненного 0x32 ничего особо страшного нет. А симптомы как у мертвой головы. Подручными средствами сделают ? Набор все тот же :
Програмный ремонт жёстких дисков HDD (Програмный (и не только) ремонт классических жёстких дисков HDD /Seagate /Samsung
Навигация по теме:
Seagate (и отдельно по F3)
Conner
Fujitsu
Quantum
Maxtor
Samsung
Western Digital
IBM, Hitachi
Прочие (Kalok, Teac, Toshiba и т.д.)
Вклад в сообщество
Классификация по ремонтопригодности навскидку:
1. Диск не раскручивается - необходим ремонт платы электроники.
2. Диск не раскручивается, но время от времени издаёт писк - клин шпиндельного двигателя либо падение головок на пластины, как правило неремонтопригодно.
3. Диск раскручивается и начинает издавать громкий стук или неприятный шум и скрежет - головка не может считать сервоинформацию и удержаться на дорожке, за редким исключением неремонтопригодно.
4. Диск раскручивается, нормально распарковывается и останавливается, либо делает несколько негромко слышимых попыток позиционирования, либо просто не виден на интерфейсе без видимых/слышимых отклонений в поведении - повреждение служебной информации, можно пытаться отремонтировать. Иногда проблема бывает также в разъёме IDE.
5. Диск определяется, но имя диска искажено, каждая вторая буква испорчена - распространённая мелкая поломка, сломан или загнут один пин данных в разъёме IDE.
6. Диск определяется системой, но ёмкость равна нулю или отдаётся не своим именем (например, Maxtor ATHENA) - повреждена служебка, ремонтопригодно. Отдаваемое имя - технологическое имя семейства, содержится в ПЗУ.
7. Диск работает, но содержит бэды в умеренном количестве - можно попробовать их скрыть.
8. Диск работает, но содержит бэды, бэд-блоки расположены чередующимися группами по всей поверхности - отказ одной головки. В некоторых случаях ее можно отключить, получив исправную модель с меньшей ёмкостью.
9. К банке, не подумав, прикрутили неродную плату - что ж, сами виноваты.
Вклад в сообщество
KALDYH писал(а): 2. Диск не раскручивается, но время от времени издаёт писк - клин шпиндельного двигателя либо падение головок на пластины, как правило неремонтопригодно.
Иногда спасти данные с такого диска можно, сначала надо раз 10 попытаться запустить в обычном режиме, далее если не выйдет, пытаться запустить подавая питание и одновременно совершая мощные щелбаны по крышке гермоблока. Попадаются полуубитые винчестеры, которые стартуют только в таком режиме. С них данные надо копировать сразу же, как только удастся раскрутить диск.
KALDYH писал(а): 5. Диск определяется, но имя диска искажено, каждая вторая буква испорчена - распространённая мелкая поломка, сломан или загнут один пин данных в разъёме IDE.
Добавлю, что иногда причиной бывает второе устройство на канале, не совместимое с подопытным винчестером.
И ещё касаемо копирования данных с проблемных жёстких дисков. Ни в коем случае не надо это делать Проводником. Он имеет свойство при ошибках диска виснуть намертво. Лучше это делать Total Commander, тот с минуту помучившись спрашивает "ошибка чтения, пробуем ещё или ну этот файл", пробовать второй раз пробовать считать обычно смысла нет, а драгоценное время пока винт совсем коньки не отбросил уменьшается.
Вклад в сообщество
Платы первых IDE жестких дисков несли на себе следующие основные компоненты:
1. Микроконтроллер - стандартный МК общего назначения, 8/16-разрядный: Motorola 68HC11, Intel 8052, 80196, Fujitsu MB89000.
2. ОЗУ микроконтроллера
3. ПЗУ
4. Контроллер интерфейса IDE, обычно производства Cirrus Logic или Adaptec
5. ОЗУ дискового кэша
6. Микросхема драйвера шпиндельного двигателя и привода актуатора (spindle and voice coil motor driver, SP&VCM, "крутилка-шевелилка"), иногда с внешними силовыми ключами.
7. Канал чтения-записи.
8. Микросхема коммутатора-предусилителя.
9. Элементы защиты.
Вот, собственно, и всё, что следует в общем знать о ремонте плат жёстких дисков. Далее, в разборе по производителям, расскажу о некоторых специфических для определенных серий поломках.
Вклад в сообщество
ATauenis писал(а): Попадаются полуубитые винчестеры, которые стартуют только в таком режиме. С них данные надо копировать сразу же, как только удастся раскрутить диск.
Вклад в сообщество
Первые жёсткие диски, как известно обитателям этого форума, обходились вовсе без микроконтроллеров, только хард-логикой и аналоговыми схемами. Позже на платах появился микроконтроллер - первоначально только для управления позиционером и отработки старта-остановки, к обмену данными он отношения не имел. И только с введением интерфейса IDE микроконтроллер стал неотъемлемой частью жёсткого диска. Поначалу в его ведении была только обработка команд протокола ATA и позиционирование, позже к ним добавились буферизованный поиск и оптимизация перемещения коромысла, стратегия кэширования, логи SMART, трансляция и переназначение секторов и многие другие функции, для управления позиционером и всей сервосистемой появился отдельный сопроцессор, а для сепарации данных - DSP. Соответственно с этим вырастал и объём требуемых для его работы данных - у первых винчестеров почти всё умещалось в ПЗУ, у новейших в нём только начальный загрузчик. Все вместе эти данные, как исполняемый код, так и всевозможные таблицы, образуют служебную информацию ("служебку"). Хранится она на поверхности жёсткого диска, на специально выделенных для этого цилиндрах (у некоторых моделях - на внешних, где плотность записи ниже, с отрицательными номерами, у других - в середине диска, в специально выделенной служебной зоне с пониженной плотностью), обычно имеет основную копию только по одной (нулевой, самой нижней) голове (называемой служебной - в принципе, модифицировав микропрограмму, можно назначить служебной любую другую), по соседней голове хранится резервная копия. Служебка недоступна пользователю. Для доступа к служебной информации по интерфейсу необходимо ввести в регистры накопителя т.н. технологический ключ, или Super-On. Откуда его узнают? Реверс-инженеринг прошивок накопителей из пакетов обновлений прошивки, фирменных служебных утилит, утечки с заводов-производителей (обычно через китайцев).
Подробнее о структуре служебки отдельных накопителей можно почитать в документации на PC3000/HRT
Жёсткие диски, SSD, флешки, RAID-массивы, ленты. Изучение, восстановление данных, ремонт.
Большинство современных дисков разных производителей имеют общую одинаково проявляющуюся неисправность: по звукам диск запускается как обычно, но при этом либо очень медленно читает данные, либо долгое время висит в состоянии 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, то запись будет вестись куда-то не туда, потому, что мы сделали блокировку. Поэтому мы указываем «Запись по АВА».
Когда процесс завершится, мы увидим, что программа пытается сначала прочитать по ID, потом идет на чтение по ABA, затем идет правка.
Давайте попробуем сделать обратно, а именно — разрешить доступ к модулю 02.
Идем в «Тесты → Служебная информация → Работа с ПЗУ → Разрешить доступ к модулю 02». Теперь нужно на всякий случай посмотреть все ли разрешилось.
Нажимаем «Инструменты → Просмотр и редактирование ресурсов HDD». В открывшемся диалоге выбираем ROM и в модуле 20B у нас вся информация.
Это можно проверить переключившись в протокол.
Там есть строчка «Чтение Flash ROM dir (Ext)…. Ok (Active)». Это означает, что у нас правильный модуль 20В. Если бы «Active» было строчкой выше, то значит, модуль 0В был бы правильный.
Далее нам нужно в модуле 20В посмотреть опцию «WD Marvel ROM Flash dir».
После выбора опции мы видим модуль 0D.
Это практически победа! Теперь выключим питание и попробуем снова включить. Диск выходит в готовность. Теперь нажимаем «Инструменты → Редактор сектора → Да → Да».
И после этого видим данные пользовательской зоны!
Первый пример получился! На сегодня все, продолжение следует.
Немного об устройстве микрокода WD
На любом диске, в процессе изготовления и эксплуатации, есть или появляются дефекты. Те, которые были выловлены на заводе, на завершающих стадиях сборки и тестирования, заносятся в т.н. “заводской” дефект-лист. Те, которые появляются в процессе эксплуатации, попадают в пользовательские дефект-листы.
Увидев нестабильно читающийся сектор, диск «понимает», что жить этому сектору осталось недолго и заносит его адрес в так называемый RELO-list. Если ошибки будут повторяться, то данный сектор будет помечен как BAD и исключен из трансляции. Но пока ещё не исключен – фоновые процессы самотестирования будут проверять его снова и снова.
Всё бы хорошо, но очень многие версии микрокода современных WD имеют забавную ошибку. Заключается она в том, что если «подозрительных» секторов стало больше, чем отведённое под них место в RELO, то происходит его, этого самого RELO, порча. Последствия этого самые разнообразные – начиная от существенной потери производительности, и заканчивая невозможностью корректной инициализации диска (RELO является модулем не уникальным, но критичным для работы по логике).
И что же делать?
Естественно, для того, чтобы проанализировать текущее состояние диска, нам нужен доступ к его служебной информации. Получить его можно разными способами. Хоть современные версии аппаратно-программных комплексов для ремонта HDD и поддерживают работу с дисками WD, используя USB-интерфейс, но в случаях зависания микропрограммы, занятой вылавливанием и отслеживанием бэд-блоков, толку от USB-интерфейса никакого нет.
При любом обращении к диску по USB ответа нет
Можно подключиться непосредственно к процессору, минуя USB-интерфейс, припаяв SATA-шлейф к плате электроники, но в данном конкретном случае такой возможности не было. Дело в том, что диск был гарантийный и на плате был стикер, не повредив которого нет возможности эту плату снять. А заказчик настаивал на том, чтобы все наклеечки были на своих местах.
Читайте также: