Восстановление HDD Samsung HM641JI
Я уже неоднократно упоминал, насколько непростым может быть восстановление данных в случае, если диск был в одном, а то и нескольких местах до того, как попал на диагностику ко мне. И дело даже не только в том, что большой пласт контор по восстановлению данных может испортить диск намеренно, но и в том, что к сожалению далеко не каждая фирма, рекламирующая свои услуги на рынке data recovery располагает квалифицированными кадрами, которые позволяют эту задачу решить. Мало кто из людей, имеющих поломанный диск с действительно важной информацией, которая в результате сбоя оборудования оказалась утраченной, задумывается над тем, что восстанавливать данные с него будет не безликая фирма, не красивый офис, не чашечка кофе услужливо поданная симпатичным менеджером, а конкретный специалист. И как бы не было красиво на сайте компании по восстановлению данных, как бы ни было хорошо у них в офисе, в конечном итоге все решает тот человек, чьи знания и руки будут потерянную информацию восстанавливать.
Статистика и опыт подсказывают, что далеко не каждый человек с поломанным диском желает восстановить с этого диска информацию. А из числа тех, кто желает, не каждый оценивает эту информацию как критически для себя важную, которую нужно восстановить во что бы то ни стало. Но когда случается именно такая ситуация, то начинаются мыканья из одной конторы в другую, в поисках — а кто же может помочь. И вот тут круги поиска сужаются до малого числа мастеров из тех, кто еще не уехал работать за границу и кто в состоянии восстановить информацию в трудных случаях. Сегодня я расскажу об одном из таких случаев — о процессе восстановления данных с HDD 2,5" 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>
Читать так же:
Восстановление Seagate Barracuda XT
Ремонт Seagate Barracuda XT 3000Gb
Восстановление HDD Samsung S1 Mini
Восстановление HDD 1.8" Samsung S1 Mini
Руки отрывать, блин. И засовывать туда, откуда росли.
Полетел такой диск. Предположительно проблема с головками. Ищем диск-донор производства Кореи (не Китай). Подскажите, кто знает, где приобрести
e-bay вам в помощь