Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data

Iku 2019. Laboratorium kita nampa drive QUANTUM FIREBALL Plus KA kanthi kapasitas 9.1GB, sing ora umum kanggo jaman saiki. Miturut pemilik drive, Gagal kedaden maneh ing 2004 amarga sumber daya gagal, kang njupuk hard drive lan komponen PC liyane. Banjur ana kunjungan menyang macem-macem layanan kanthi nyoba ndandani drive lan mulihake data, sing ora kasil. Ing sawetara kasus, dheweke janji bakal murah, nanging ora nate ngrampungake masalah kasebut, ing liyane larang banget lan klien ora pengin mulihake data kasebut, nanging pungkasane disk kasebut ngliwati akeh pusat layanan. Iku ilang kaping pirang-pirang, nanging thanks kanggo kasunyatan sing pemilik njupuk care saka informasi saka macem-macem stiker ing drive ing advance, kang ngatur kanggo mesthekake yen hard drive wis bali saka sawetara pusat layanan. Mlaku-mlaku ora liwati, sawetara tilak soldering tetep ing Papan controller asli, lan lack saka unsur SMD uga visual felt (looking ahead, Aku bakal ngomong sing iki paling saka masalah drive iki).

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 1 HDD Quantum Fireball Plus KA 9,1GB

Wangsulan: Bab ingkang sapisanan kita kudu nindakake iku nelusuri ing arsip donor kanggo kuwi sadulur kembar kuna drive iki karo Papan controller digunakake. Nalika nggoleki iki rampung, dadi bisa kanggo nindakake langkah-langkah diagnostik ekstensif. Sawise mriksa windings motor kanggo short circuit lan priksa manawa ora ana short circuit, kita nginstal Papan saka drive donor kanggo drive sabar. We aplikasi daya lan krungu swara normal saka batang Spinning munggah, maringaken test kalibrasi karo loading perangkat kukuh, lan sawise sawetara detik drive laporan dening ndhaftar sing wis siyap kanggo nanggepi printah saka antarmuka.

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 2 Indikator DRD DSC nuduhake kesiapan kanggo nampa printah.

Kita nggawe serep kabeh salinan modul perangkat kukuh. Kita mriksa integritas modul perangkat kukuh. Ora ana masalah karo modul maca, nanging analisis laporan nuduhake yen ana sawetara oddities.

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 3. Tabel Zona.

We mbayar manungsa waΓ© kanggo Tabel distribusi zonal lan Wigati sing nomer silinder punika 13845.

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 4 P-list (dhaptar utami - dhaptar cacat sing ditepungake sajrone siklus produksi).

We tarik manungsa waΓ© kanggo nomer cilik banget saka cacat lan lokasi. We katon ing cacat pabrik modul ndhelikake log (60h) lan golek sing kosong lan ora ngemot entri siji. Adhedhasar iki, kita bisa nganggep manawa ing salah sawijining pusat layanan sadurunge, sawetara manipulasi bisa ditindakake ing area layanan drive, lan kanthi ora sengaja utawa sengaja ditulis modul asing, utawa dhaptar cacat ing asline. siji diresiki. Kanggo nguji asumsi iki, kita nggawe tugas ing Data Extractor kanthi opsi "gawe salinan sektor-by-sektor" lan "gawe penerjemah virtual".

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 5 Parameter tugas.

Sawise nggawe tugas, kita ndeleng entri ing tabel partisi ing sektor nol (LBA 0)

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 6 Rekam boot master lan tabel partisi.

Ing offset 0x1BE ana entri siji (16 bita). Jinis sistem file ing partisi yaiku NTFS, ngimbangi wiwitan sektor 0x3F (63), ukuran partisi 0x011309A3 (18) sektor.
Ing editor sektor, bukak LBA 63.

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 7 sektor boot NTFS

Miturut informasi ing sektor boot saka partisi NTFS, kita bisa ngomong ing ngisor iki: ukuran sektor sing ditampa ing volume yaiku 512 bita (tembung 0x0 (0) ditulis ing offset 0200x512B), jumlah sektor ing kluster yaiku 8 (byte 0x0 ditulis ing offset 0x08D), ukuran cluster 512x8=4096 byte, rekaman MFT pisanan dumunung ing offset 6 sektor saka wiwitan disk (ing offset 291x519 quadruple word 0x30 0 00 00 00 00C 00 0 (00) nomer kluster MFT pisanan. Nomer sektor diitung kanthi rumus: Nomer Kluster * nomer sektor ing kluster + ngimbangi wiwitan bagean 00 * 786 + 432 = 786).
Ayo pindhah menyang sektor 6.

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gambar. Xnumx

Nanging data sing ana ing sektor iki beda banget karo rekaman MFT. Sanajan iki nuduhake kemungkinan terjemahan sing salah amarga dhaptar cacat sing salah, nanging iki ora mbuktekake kasunyatan kasebut. Kanggo mriksa luwih, kita bakal maca disk dening 10 sektor ing loro arah relatif kanggo 000 sektor. Banjur kita bakal nggoleki ekspresi reguler ing apa sing diwaca.

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 9 Rekaman MFT pisanan

Ing sektor 6 kita nemokake rekor MFT pisanan. Posisi kasebut beda karo sing diwilang kanthi 291 sektor, lan banjur ana klompok 551 cathetan (saka 32 nganti 16) terus-terusan. Ayo mlebu posisi sektor 0 menyang tabel shift lan maju kanthi 15 sektor.

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gambar. Xnumx

Posisi rekaman No. Ayo padha nindakake telusuran sing padha ing wilayah sekitar.

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 11 MFT entri 0x00000011 (17)

SebagΓ©an gedhΓ© MFT dideteksi, diwiwiti kanthi rekor nomer 17 kanthi dawa 53 cathetan) kanthi owah-owahan 646 sektor. Kanggo posisi 17, sijine shift +12 sektor ing tabel shift.
Sawise nemtokake posisi fragmen MFT ing papan, kita bisa nyimpulake yen iki ora katon kaya kegagalan acak lan ngrekam fragmen MFT ing offset sing salah. Versi karo penerjemah sing salah bisa dianggep dikonfirmasi.
Kanggo luwih lokalisasi titik shift, kita bakal nyetel pamindahan maksimal. Kanggo nindakake iki, kita nemtokake pinten panandha pungkasan partisi NTFS (salinan sektor boot) dipindhah. Ing Gambar 7, ing offset 0x28, quadword minangka nilai ukuran partisi 0x00 00 00 00 01 13 09 A2 (18) sektor. Ayo dadi nambah offset saka pemisahan dhewe saka awal disk kanggo dawa, lan kita njaluk offset pungkasan NTFS panandha 024 + 866 = 18. Kaya samesthine, salinan dibutuhake saka sektor boot ora ana. Nalika nggoleki wilayah sekitar, ditemokake kanthi owah-owahan sektor +024 sing luwih dhuwur tinimbang fragmen MFT pungkasan.

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 12 Salinan sektor boot NTFS

Kita nglirwakake salinan liyane saka sektor boot ing offset 18, amarga ora ana hubungane karo partisi kita. Adhedhasar aktivitas sadurunge, ditetepake manawa ing bagean kasebut ana 041 sektor sing "muncul" ing siaran, sing nambah data.
Kita nindakake maca lengkap drive, sing ninggalake 34 sektor sing durung diwaca. Sayange, iku mokal kanggo andal njamin sing kabeh iku cacat dibusak saka P-dhaftar, nanging ing analisis luwih iku saranake kanggo njupuk menyang akun posisi, amarga ing sawetara kasus bisa andal nemtokake titik shift karo. akurasi sektor, lan ora file.

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 13 Statistik maca disk.

Tugas sabanjure yaiku netepake lokasi kira-kira owah-owahan (kanggo akurasi file sing kedadeyan). Kanggo nindakake iki, kita bakal mindhai kabeh rekaman MFT lan mbangun rantai lokasi file (fragmen file).

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 14 Rantai lokasi file utawa pecahan.

Sabanjure, pindhah saka file menyang file, kita nggoleki wayahe sing bakal ana data liyane tinimbang header file sing dikarepake, lan header sing dikarepake bakal ditemokake kanthi owah-owahan positif tartamtu. Lan nalika kita nyaring TCTerms shift, kita isi metu meja. Asil ngisi bakal luwih saka 99% file tanpa karusakan.

Mlaku-mlaku liwat sangsara utawa sajarah dawa siji nyoba Recovery data
Gabah. 15 Dhaptar file pangguna (idin ditampa saka klien kanggo nerbitake gambar iki)

Kanggo netepake owah-owahan titik ing file individu, sampeyan bisa nindakake karya tambahan lan, yen sampeyan ngerti struktur file, golek inklusi data sing ora ana gandhengane. Nanging ing tugas iki ora bisa ditindakake kanthi ekonomi.

PS Aku uga kaya kanggo alamat kolega, ing tangan kang disk iki sadurunge. Ati-ati nalika nggarap perangkat kukuh piranti lan gawe serep data layanan sadurunge ngganti apa wae, lan aja kanthi sengaja nambah masalah yen sampeyan ora bisa setuju karo klien ing karya kasebut.

Publikasi sadurunge: Nyimpen cocog utawa mbalekake data saka HDD Seagate ST3000NC002-1DY166 mecah

Source: www.habr.com

Add a comment