Статьи

Восстановление HDD Samsung HM641JI

Artem Makarov aka Robin
18.01.2012
8243 просмотра

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

Статистика и опыт подсказывают, что далеко не каждый человек с поломанным диском желает восстановить с этого диска информацию. А из числа тех, кто желает, не каждый оценивает эту информацию как критически для себя важную, которую нужно восстановить во что бы то ни стало. Но когда случается именно такая ситуация, то начинаются мыканья из одной конторы в другую, в поисках — а кто же может помочь. И вот тут круги поиска сужаются до малого числа мастеров из тех, кто еще не уехал работать за границу и кто в состоянии восстановить информацию в трудных случаях. Сегодня я расскажу об одном из таких случаев — о процессе восстановления данных с HDD 2,5" Samsung HM641JI который попал ко мне побывав в нескольких фирмах, рекламирующих услуги по восстановлению данных в Москве.

Ремонт HDD Samsung HM641JI

Ремонт HDD Samsung HM641JI

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

В качестве небольшого отступления скажу, что у современных дисков Samsung есть довольно странная "фирменная" болезнь — сбой в ПЗУ, возникающий в одном из сегментов, защищенным контрольной суммой, модуле FIPS, в котором содержатся некритичные для работы настройки burn-in теста и прочая мелочь. Вместе с тем, при сбоях в записи этот модуль может либо содержать часть неверных данных, в результате чего не сходится его контрольная сумма, либо вообще записаться по другому смещению. Попытка инициализации ПЗУ в таком виде приводит к полному зависанию микропрограммы, — микроконтроллер вообще не отзывается на внешние раздражители. Способ лечения — отпаивать ПЗУ, считывать содержимое программатором и смотреть, что не так. Ну а потом вносить необходимые правки и записывать все назад. Работа несложная, когда знаешь что и как, разумеется. Но диску не повезло, и он изначально попал не в те руки. И диагностика пошла не тем путем. ПЗУ перепаяли на заведомо исправную плату, диск остался в том же состоянии. Далее предположили, что старту мешает КЗ на preamp блока голов и поменял блок магнитных голов в сборе. Диск так же не заработал. Потом подключили к диску проинициализированную на другом гермоблоке плату и начали бесчеловечные эксперименты со служебной областью.

К успеху это не привело, и диск вернули владельцу. Владелец пошел в другое место. Там опять поменяли блок голов и опять ничего не заработало. В итоге диск попал ко мне. После решения проблемы с оригинальным ПЗУ я столкнулся с тем, что в микропрограмме диска АДЪ. Часть критически важных модулей заполнена нулями, часть мусором, часть явно от чужой версии микропрограммы и записана от другого диска.

В диагностический порт при старте выдавалось:

 Apple Macpro RAID connect phy calibration PLL locked! ChipRev = 63B0 *PA VID=0007 PN=0000 Rev=0004 *PA VID=0007 PN=0000 Rev=0004 U S_0Shock Sensor Circuit Enabled SO_1 Shock Sensor Circuit Enabled IS=2 CLA #36/73 Handoff RPM=653 SPOK SR:70 SS:00000280 mS1 00000003 A1O=126 A1G=429 O=511 S=4 SK C: 5047 H:0 EPOK EPOK Scan BS .. Boot Sector Error! Take a default. Error to read FIT header ( 0: 0: 1) Error to read FIT header ( 0: 1: 1) Error to read FIT header ( 0: 2: 1) Use default FIT | 4 | MLIST | 0 | 0 | 10 | B98B | | 4 | MLIST | 0 | 1 | 10 | 1140 | | 155 | SV_TBL | 0 | 0 | 23 | B98B | | 155 | SV_TBL | 0 | 1 | 23 | 1140 | | 155 | SV_TBL | 0 | 2 | 23 | B98B | CalibTbl Loaded. Rev:0x17 | 181 | RESO_TBL | 0 | 0 | 35 | B98B | | 181 | RESO_TBL | 0 | 1 | 35 | 1140 | | 181 | RESO_TBL | 0 | 2 | 35 | 1140 | file system read bad BLimit | 180 | RR0_TBL | 0 | 0 | 33 | B98B | | 180 | RR0_TBL | 0 | 1 | 33 | B98B | | 180 | RR0_TBL | 0 | 2 | 33 | B98B | RRO1xTbl Loaded. Rev:0x01 | 12 | CHN_TBL | 0 | 0 | 41 | B98A | | 12 | CHN_TBL | 0 | 1 | 41 | 1140 | | 12 | CHN_TBL | 0 | 2 | 41 | B98B | | 157 | PARAM_DM | 0 | 0 | 167 | B98B | | 157 | PARAM_DM | 0 | 1 | 167 | B98B | | 157 | PARAM_DM | 0 | 2 | 167 | B98B | Ovly loaded to 0x0001CD00 Ovly loaded to 0x1005B800 | 178 | PROFILE | 0 | 0 | 180 | B98B | | 178 | PROFILE | 0 | 1 | 180 | B98B | | 178 | PROFILE | 0 | 2 | 180 |

И диск наглухо зависал. Пособирав из копий те модули. Что явно были заполнены нулями и мусором и прописав их по 0-й голове я получил уже:

 Apple Macpro RAID connect phy calibration PLL locked! ChipRev = 63B0 *PA VID=0007 PN=0000 Rev=0004 *PA VID=0007 PN=0000 Rev=0004 U S_0Shock Sensor Circuit Enabled SO_1 Shock Sensor Circuit Enabled IS=2 CLA #36/73 Handoff RPM=647 SPOK SR:85 SS:00000280 mS1 00000003 A1O=126 A1G=434 O=511 S=2 SK C: 5048 H:0 POK POK Boot Sector Error! Take a default. Loaded FIT ( 0: 0: 1) CalibTbl Loaded. Rev:0x17 ResoTbl Loaded. Rev:0x01 BLimit RRO1xTbl Loaded. Rev:0x01 | 157 | PARAM_DM | 0 | 0 | 167 | B98B | | 157 | PARAM_DM | 0 | 1 | 167 | B98B | | 157 | PARAM_DM | 0 | 2 | 167 | B98B | Ovly loaded to 0x0001CD00 Ovly (0x1005B800) chksum fail! Ovly NOT loaded | 178 | PROFILE | 0 | 0 | 180 | B98B | | 178 | PROFILE | 0 | 1 | 180 | B98B | | 178 | PROFILE | 0 | 2 | 180 | B98B | | 164 | TUNE_RST | 0 | 0 | 193 | B98B | | 164 | TUNE_RST | 0 | 1 | 193 | B98B | | 164 | TUNE_RST | 0 | 2 | 193 | B98B | FdtTbl Loaded. Rev:0x02 | 20 | TMPRTURE | 0 | 0 | 203 | B98B | | 20 | TMPRTURE | 0 | 1 | 203 | B98B | | 20 | TMPRTURE | 0 | 2 | 203 | B98B | | 252 | WV_VARIA | 43 | 0 | 478 | B98B | | 252 | WV_VARIA | 43 | 1 | 478 | B98B | | 252 | WV_VARIA | 43 | 2 | 478 | B98B | | 17 | SLIST | 3 | 0 | 0 | B98B | | 17 | SLIST | 3 | 1 | 0 | 1140 | | 15 | VLIST | 2 | 0 | 0 | B98B | | 15 | VLIST | 2 | 1 | 0 | 1140 | | 15 | VLIST | 2 | 2 | 0 | B98B | | 18 | TLIST | 2 | 0 | 340 | B98A | | 18 | TLIST | 2 | 1 | 340 | 1140 | | 18 | TLIST | 2 | 2 | 340 | B98B | | 105 | SCRAMBER | 0 | 0 | 210 | B98B | Reading Serial Num Pass | 241 | FOD_JIT | 40 | 0 | 791 | B98B | | 241 | FOD_JIT | 40 | 1 | 791 | B98B | | 241 | FOD_JIT | 40 | 0 | 791 | B98B | | 241 | FOD_JIT | 40 | 1 | 791 | B98B | Up MC PwrOn RRO1x @ H0 Table) cos = 220672, sin = 150528 Coeff) cos = -4943, sin = 5681 DiskSlip : 24 [SrvTrk] DiskSlip : 25 [SrvTrk] PwrOn RRO1x @ H2 Table) cos = 205056, sin = 176128 Coeff) cos = 9574, sin = -3033 DiskSlip : 25 [SrvTrk] DiskSlip : 25 [SrvTrk] TgtCyl: 842 Hd: 0 Zn: 0 Avg.:- 89 TgtCyl: 174351 Hd: 0 Zn: 1 Avg.: 977 SVCAL(0080,0000)-->PASS | 244 | ZONHEAL2 | 41 | 0 | 0 | B98B | | 244 | ZONHEAL2 | 41 | 1 | 0 | 1140 | | 244 | ZONHEAL2 | 41 | 2 | 0 | B98B | InitAtwH| 167 | DRM | 27 | 0 | 0 | B98B | | 167 | DRM | 27 | 1 | 0 | 1140 | | 167 | DRM | 27 | 2 | 0 | B98B | RecordValid Fail : 01078061 0107E41D EPOK SoUL! Abnormal end PK_4 C: 8496 H:0 Software unloading! PK_4 C: 8496 H:0 LED 1A04 LED 1A04 LED 1A04

Выведя диск из ошибки LED 1A04 я увидел паспорт и LBA от 320-ки и при попытке доступа к User Area выдавалось:

 Apple Macpro RAID connect phy calibration PLL locked! ChipRev = 63B0 *PA VID=0007 PN=0000 Rev=0004 *PA VID=0007 PN=0000 Rev=0004 U S_0Shock Sensor Circuit Enabled SO_1 Shock Sensor Circuit Enabled IS=5 CLA #36/75 Handoff RPM=2500 <MDL_SVO_SpinCheckReady_1> mfAccelRty = 1 RPM = 3157 Shock Sensor Circuit Enabled IS=2 CLA #36/72 Handoff RPM=2973 SPOK SR:83 SS:00000280 mS1 00000003 A1O=126 A1G=434 O=511 S=2 SK C: 5085 H:0 POK POK Boot Sector Error! Take a default. Loaded FIT ( 0: 0: 1) [DEBUG HALT @MDL_RSRC_BufferAlloc():10034AED L0 100364BB] EPOK Cur_SP=04007348 FIQ_SP=04007348 IRQ_SP=04007348 SVC_SP=04007348 *** HALT ***

И после страшного "ХАЛЬТ" глухое зависание.

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

 Apple Macpro RAID connect phy calibration PLL locked! ChipRev = 63B0 *PA VID=0007 PN=0000 Rev=0004 *PA VID=0007 PN=0000 Rev=0004 U S_0Shock Sensor Circuit Enabled SO_1 Shock Sensor Circuit Enabled IS=4 CLA #36/73 Handoff RPM=618 SPOK SR:122 SS:00000280 mS1 00000003 A1O=126 A1G=443 O=511 S=5 SK C: 5063 H:0 POK POK Boot Sector Error! Take a default. Loaded FIT ( 0: 0: 1) CalibTbl Loaded. Rev:0x17 ResoTbl Loaded. Rev:0x01 Ld init bump 51 BLimit Loaded. Rev:0x00 RRO1xTbl Loaded. Rev:0x01 Ovly loaded to 0x0001CD00 Ovly loaded to 0x1005B800 FdtTbl Loaded. Rev:0x02 Reading Serial Num Pass Up MC PwrOn RRO1x @ H0 Table) cos = 216320, sin = 141824 Coeff) cos = -1888, sin = -1339 DiskSlip : 24 [SrvTrk] DiskSlip : 24 [SrvTrk] PwrOn RRO1x @ H2 Table) cos = 202496, sin = 169216 Coeff) cos = 787, sin = 99 DiskSlip : 24 [SrvTrk] DiskSlip : 25 [SrvTrk] TgtCyl: 842 Hd: 0 Zn: 0 Avg.:- 91 TgtCyl: 173914 Hd: 0 Zn: 1 Avg.: 958 SVCAL(0080,0000)-->PASS RecordValid Ok : 0107E47D 0107E41D ReadyTime = 4501349 us EPOK ENG>

 

Оставьте комментарий
M
19 января 2012, 09:08

Руки отрывать, блин. И засовывать туда, откуда росли.

Diana
19 сентября 2012, 15:49

Полетел такой диск. Предположительно проблема с головками. Ищем диск-донор производства Кореи (не Китай). Подскажите, кто знает, где приобрести

Artem Makarov aka Robin
22 сентября 2012, 13:34

e-bay вам в помощь

Нужна консультация?

Мы одна из немногих лабораторий в России, которая восстанавливает данные самостоятельно.

Для этого у нас есть все необходимое:
Важно – кто будет первым!
восстанавливать
информацию