Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei

Tas bija 2019. gads. MÅ«su laboratorija saņēma QUANTUM FIREBALL Plus KA disku ar 9.1GB ietilpÄ«bu, kas mÅ«su laikam nav gluži ierasts. Kā stāsta diska Ä«paÅ”nieks, kļūme notikusi tālajā 2004. gadā bojāta baroÅ”anas avota dēļ, kas lÄ«dzi paņēmis cieto disku un citas datora sastāvdaļas. Pēc tam bija dažādu servisu apmeklējumi ar mēģinājumiem salabot disku un atjaunot datus, kas bija nesekmÄ«gi. Dažos gadÄ«jumos viņi solÄ«ja, ka tas bÅ«s lēti, taču viņi nekad neatrisināja problēmu, citos tas bija pārāk dārgi un klients nevēlējās atjaunot datus, bet beigās disks izgāja cauri daudziem servisa centriem. Tas tika pazaudēts vairākas reizes, taču, pateicoties tam, ka Ä«paÅ”nieks jau iepriekÅ” parÅ«pējās par informācijas ierakstÄ«Å”anu no dažādām uzlÄ«mēm uz diska, viņam izdevās nodroÅ”ināt cietā diska atgrieÅ”anu no dažiem servisa centriem. Gājieni nepagāja bez pēdām, uz oriÄ£inālās kontrollera plates palika vairākas lodÄ“Å”anas pēdas, arÄ« vizuāli bija jÅ«tams SMD elementu trÅ«kums (skatoties uz priekÅ”u, teikÅ”u, ka Ŕī ir mazākā no Ŕī diska problēmām).

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
RÄ«si. 1 cietais disks Quantum Fireball Plus KA 9,1 GB

Pirmā lieta, kas mums bija jādara, bija meklēt donoru arhÄ«vā tik senu Ŕī diska dvīņu brāli ar strādājoÅ”u kontroliera plati. Kad Å”is uzdevums tika pabeigts, kļuva iespējams veikt plaÅ”us diagnostikas pasākumus. Pārbaudot motora tinumu Ä«ssavienojumu un pārliecinoties, ka nav Ä«ssavienojuma, mēs uzstādām plati no donora piedziņas uz pacienta piedziņu. Mēs pieslēdzam strāvu un dzirdam parasto vārpstas grieÅ”anās skaņu, izejot kalibrÄ“Å”anas testu ar programmaparatÅ«ras ielādi, un pēc dažām sekundēm diskdzinis reÄ£istros ziņo, ka ir gatavs reaģēt uz interfeisa komandām.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
Rīsi. 2 DRD DSC indikatori norāda gatavību saņemt komandas.

Mēs dublējam visas programmaparatÅ«ras moduļu kopijas. Mēs pārbaudām programmaparatÅ«ras moduļu integritāti. Ar moduļu lasÄ«Å”anu problēmu nav, taču pārskatu analÄ«ze liecina, ka ir dažas dÄ«vainÄ«bas.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
RÄ«si. 3. Zonu tabula.

Mēs pievērÅ”am uzmanÄ«bu zonas sadalÄ«juma tabulai un ņemam vērā, ka cilindru skaits ir 13845.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
RÄ«si. 4 P-saraksts (primārais saraksts ā€“ ražoÅ”anas cikla laikā ieviesto defektu saraksts).

VērÅ”am uzmanÄ«bu uz pārāk mazo defektu skaitu un to atraÅ”anās vietu. Apskatām rÅ«pnÄ«cas defektu slēpÅ”anas žurnāla moduli (60h) un konstatējam, ka tas ir tukÅ”s un nesatur nevienu ierakstu. Pamatojoties uz to, mēs varam pieņemt, ka vienā no iepriekŔējiem servisa centriem, iespējams, tika veiktas dažas manipulācijas ar diska apkalpoÅ”anas zonu un nejauÅ”i vai tÄ«Å”i tika uzrakstÄ«ts sveÅ”s modulis vai oriÄ£inālā esoÅ”o defektu saraksts. viens tika notÄ«rÄ«ts. Lai pārbaudÄ«tu Å”o pieņēmumu, mēs izveidojam uzdevumu programmā Data Extractor ar iespējotām opcijām ā€œizveidot kopiju pa sektoramā€ un ā€œizveidot virtuālo tulkotājuā€.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
RÄ«si. 5 Uzdevuma parametri.

Pēc uzdevuma izveidoÅ”anas mēs skatāmies nodalÄ«juma tabulas ierakstus sektorā nulles (LBA 0)

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
RÄ«si. 6 Galvenais sāknÄ“Å”anas ieraksts un nodalÄ«jumu tabula.

Pie nobīdes 0x1BE ir viens ieraksts (16 baiti). Failu sistēmas tips nodalījumā ir NTFS, nobīde uz 0x3F (63) sektoru sākumu, nodalījuma lielums 0x011309A3 (18 024 867) sektoros.
Sektora redaktorā atveriet LBA 63.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
RÄ«si. 7 NTFS sāknÄ“Å”anas sektors

Saskaņā ar informāciju NTFS nodalÄ«juma sāknÄ“Å”anas sektorā mēs varam teikt sekojoÅ”o: sējumā pieņemtais sektora lielums ir 512 baiti (vārds 0x0 (0) ir rakstÄ«ts pie nobÄ«des 0200x512B), sektoru skaits klasterÄ« ir 8 (baits 0x0 tiek rakstÄ«ts pie nobÄ«des 0x08D), klastera izmērs ir 512x8=4096 baiti, pirmais MFT ieraksts atrodas 6 291 519 sektoru nobÄ«dē no diska sākuma (ar nobÄ«di 0x30 četrkārÅ”s vārds 0x00 00 00 00C 00 0 (00 00) pirmā MFT klastera numurs Sektora numuru aprēķina pēc formulas: Klastera numurs * sektoru skaits klasterÄ« + nobÄ«de lÄ«dz sadaļas sākumam 786 432* 786+432= 8 63 6).
Pārejam uz 6 291 519 sektoru.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
Att. 8

Bet Å”ajā sektorā ietvertie dati pilnÄ«gi atŔķiras no MFT ieraksta. Lai gan tas norāda uz iespējamu nepareizu tulkojumu nepareiza defektu saraksta dēļ, tas Å”o faktu nepierāda. Lai veiktu papildu pārbaudi, mēs nolasÄ«sim disku par 10 000 sektoriem abos virzienos, salÄ«dzinot ar 6 291 519 sektoriem. Un tad mēs lasāmajā meklēsim regulāras izteiksmes.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
RÄ«si. 9 Pirmais MFT ieraksts

6 291 551 sektorā atrodam pirmo MFT ierakstu. Tā pozÄ«cija no aprēķinātā atŔķiras par 32 sektoriem, un tad nepārtraukti seko 16 ierakstu grupa (no 0 lÄ«dz 15). IevadÄ«sim maiņu tabulā sektora 6 291 519 pozÄ«ciju un virzÄ«simies uz priekÅ”u par 32 sektoriem.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
Att. 10

Ieraksta Nr.16 pozÄ«cijai jābÅ«t nobÄ«dei 12 551 431, bet MFT ieraksta vietā mēs atrodam nulles. Veiksim lÄ«dzÄ«gu meklÄ“Å”anu tuvākajā apkārtnē.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
RÄ«si. 11 MFT ieraksts 0x00000011 (17)

Tiek atklāts liels MFT fragments, sākot ar ieraksta numuru 17 ar 53 646 ierakstu garumu) ar 17 sektoru nobīdi. Pozīcijā 12 155 431 ievietojiet maiņu tabulā +17 sektoru maiņu.
Noskaidrojot MFT fragmentu atraÅ”anās vietu telpā, varam secināt, ka tas neizskatās pēc nejauÅ”as atteices un MFT fragmentu ierakstÄ«Å”anas pie nepareizām nobÄ«dēm. Versiju ar nepareizu tulkotāju var uzskatÄ«t par apstiprinātu.
Lai tālāk lokalizētu pārslēgÅ”anas punktus, mēs iestatÄ«sim maksimālo iespējamo pārvietojumu. Lai to izdarÄ«tu, mēs nosakām, cik daudz tiek pārvietots NTFS nodalÄ«juma beigu marÄ·ieris (sāknÄ“Å”anas sektora kopija). 7. attēlā pie nobÄ«des 0x28 četrvārds ir nodalÄ«juma lieluma vērtÄ«ba 0x00 00 00 00 01 13 09 A2 (18 024 866) sektoros. Pievienosim paÅ”a nodalÄ«juma nobÄ«di no diska sākuma lÄ«dz tā garumam un iegÅ«stam beigu NTFS marÄ·iera nobÄ«di 18 024 866 + 63= 18 024 929. Kā jau bija gaidāms, vajadzÄ«gā sāknÄ“Å”anas sektora kopija tur nebija. Pārmeklējot apkārtni, tas tika atrasts ar pieaugoÅ”u +12 sektoru nobÄ«di attiecÄ«bā pret pēdējo MFT fragmentu.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
RÄ«si. 12 NTFS sāknÄ“Å”anas sektora kopija

Mēs ignorējam otru sāknÄ“Å”anas sektora kopiju ar nobÄ«di 18 041 006, jo tā nav saistÄ«ta ar mÅ«su nodalÄ«jumu. Pamatojoties uz iepriekŔējām aktivitātēm, tika konstatēts, ka sadaļas ietvaros ir iekļauti 61 raidÄ«jumā ā€œuzniruÅ”ieā€ sektori, kas paplaÅ”ināja datus.
Mēs veicam pilnu diska nolasÄ«Å”anu, kas atstāj 34 nelasÄ«tus sektorus. Diemžēl nav iespējams droÅ”i garantēt, ka tie visi ir defekti, kas izņemti no P-saraksta, taču turpmākajā analÄ«zē ir ieteicams ņemt vērā to atraÅ”anās vietu, jo dažos gadÄ«jumos bÅ«s iespējams ticami noteikt maiņas punktus ar sektora, nevis faila precizitāte.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
Rīsi. 13 Diska nolasīŔanas statistika.

MÅ«su nākamais uzdevums bÅ«s noteikt aptuvenās maiņu atraÅ”anās vietas (lÄ«dz tās faila precizitātei, kurā tās notika). Lai to izdarÄ«tu, mēs skenēsim visus MFT ierakstus un izveidosim failu atraÅ”anās vietu ķēdes (failu fragmentus).

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
RÄ«si. 14 Failu vai to fragmentu atraÅ”anās vietas ķēdes.

Tālāk, pārejot no faila uz failu, mēs meklējam brÄ«di, kurā gaidÄ«tās faila galvenes vietā bÅ«s citi dati, un vēlamā galvene tiks atrasta ar noteiktu pozitÄ«vu nobÄ«di. Un, precizējot maiņas punktus, mēs aizpildām tabulu. Tā aizpildÄ«Å”anas rezultāts bÅ«s vairāk nekā 99% failu bez bojājumiem.

Pastaiga cauri agonijai vai viena datu atkopÅ”anas mēģinājuma ilgajai vēsturei
RÄ«si. 15 Lietotāju failu saraksts (tika saņemta klienta piekriÅ”ana publicēt Å”o ekrānuzņēmumu)

Lai noteiktu punktu nobīdes atseviŔķos failos, varat veikt papildu darbu un, ja zināt faila struktūru, atrast ar to nesaistītu datu iekļauŔanu. Bet Ŕajā uzdevumā tas nebija ekonomiski izdevīgi.

PS Vēlos uzrunāt arÄ« savus kolēģus, kuru rokās Å”is disks bija iepriekÅ”. LÅ«dzu, esiet piesardzÄ«gs, strādājot ar ierÄ«ces programmaparatÅ«ru un dublējiet pakalpojuma datus, pirms kaut ko maināt, un apzināti nepasliktiniet problēmu, ja nevarat vienoties ar klientu par darbu.

IepriekŔējā publikācija: Satiksmes saglabāŔana vai datu atkopÅ”ana no slÄ«pÄ“Å”anas HDD Seagate ST3000NC002-1DY166

Avots: www.habr.com

Pievieno komentāru