Di halaman adalah tahun 2019. Drive QUANTUM FIREBALL Plus KA dengan kapasitas 9,1 GB datang ke laboratorium kami, yang tidak biasa untuk zaman kita. Menurut pemilik drive, kegagalan terjadi kembali pada tahun 2004 karena kesalahan catu daya yang gagal, yang mengambil hard drive dan komponen PC lainnya. Lalu ada jalan-jalan di berbagai layanan dengan upaya untuk memperbaiki drive dan mengembalikan data yang tidak berhasil. Di suatu tempat mereka berjanji itu murah, tetapi mereka masih tidak menyelesaikan masalah, di suatu tempat itu terlalu mahal dan klien tidak ingin mengembalikan data, tetapi pada akhirnya drive melewati banyak pusat layanan. Dia hilang beberapa kali, tetapi karena kenyataan bahwa pemiliknya berhati-hati sebelumnya untuk merekam informasi dari berbagai stiker pada drive, dia berhasil memastikan bahwa hard drive-nya dikembalikan dari beberapa pusat layanan. Sirkuit tidak lulus tanpa jejak, pada papan pengontrol asli ada beberapa jejak penyolderan, dan kurangnya elemen SMD juga terasa secara visual (melihat ke depan saya akan mengatakan bahwa ini adalah masalah paling kecil dari drive ini).

Fig. 1 HDD Quantum Fireball Plus KA 9.1GBHal pertama yang harus saya lakukan adalah mencari di arsip donor saudara kembar kuno dari drive ini dengan papan pengontrol yang berfungsi. Ketika pencarian ini selesai, menjadi mungkin untuk melakukan tindakan diagnostik terperinci. Setelah memeriksa belitan motor untuk korsleting dan memastikan tidak adanya gulungan, kami memasang papan dari drive - donor ke drive - pasien. Kami memberi energi dan mendengar suara normal dari poros berputar, melewati uji kalibrasi dengan memuat firmware, dan setelah beberapa detik drive tersebut mendaftar tentang kesiapannya untuk merespons perintah dari antarmuka.
Fig. 2 Indikator DRC DSC menunjukkan kesiapan untuk menerima perintah.Kami menyimpan semua salinan modul firmware. Kami memeriksa integritas modul firmware. Tidak ada masalah dengan membaca modul, tetapi analisis laporan menunjukkan bahwa ada beberapa keanehan.
Fig. 3. Tabel zona.Kami memperhatikan tabel distribusi zona, kami perhatikan bahwa jumlah silinder adalah 13845.
Fig. 4 P-list (daftar utama - daftar cacat yang diperkenalkan selama siklus produksi).Kami memperhatikan terlalu sedikit cacat dan lokalisasi mereka. Kami melihat modul untuk menyembunyikan cacat pabrik (60 jam) dan menemukan bahwa itu kosong dan tidak mengandung entri apa pun. Berdasarkan hal ini, kita dapat mengasumsikan bahwa di beberapa pusat layanan sebelumnya, beberapa manipulasi dengan area layanan drive mungkin telah dilakukan, dan modul orang lain secara tidak sengaja atau sengaja direkam, atau daftar kerusakan pada aslinya dihapus. Untuk memverifikasi asumsi ini, kami membuat tugas di Data Extractor dengan opsi "buat salinan sektor-per-sektor" dan "buat penerjemah virtual" diaktifkan.
Fig. 5 parameter tugas.Setelah membuat tugas, kita melihat entri dalam tabel partisi di sektor nol (LBA 0)
Fig. 6 Catatan boot master dan tabel partisi.Pada offset 0x1BE, ada catatan tunggal (16 byte). Jenis sistem file pada partisi adalah NTFS, offset ke awal sektor 0x3F (63), ukuran partisi adalah 0x011309A3 (18.024.867) sektor.
Di editor sektor, buka LBA 63.
Fig. 7 sektor boot NTFSMenurut informasi di sektor boot NTFS, berikut ini dapat dikatakan: ukuran sektor yang diadopsi dalam volume adalah 512 byte (kata 0x0200 (512) ditulis pada offset 0x0B), jumlah sektor dalam cluster adalah 8 (byte 0x08 ditulis pada offset 0x0D), ukuran cluster adalah 512x8 = 4096 byte, catatan MFT pertama terletak pada offset 6.291.519 sektor dari awal disk (pada offset 0x30 kata quadruple 0x00 00 00 00 00 00 00 (786 432) adalah jumlah cluster MFT pertama. Nomor sektor dihitung dengan rumus: Nomor cluster * angka jumlah sektor dalam cluster + shift sebelum dimulainya partisi 786 432 * 8 + 63 = 6.291.519).
Kami lolos ke sektor 6 291 519.
Fig. 8Tetapi data yang terkandung di sektor ini sama sekali berbeda dari catatan MFT. Meskipun ini menunjukkan kemungkinan siaran yang salah karena daftar cacat yang salah, itu tidak membuktikan fakta ini. Untuk verifikasi lebih lanjut, kita akan membaca disk di 10.000 sektor di kedua arah relatif terhadap 6.291.519 sektor. Dan kemudian kita akan mencari ekspresi reguler di baca.
Fig. 9 Catatan MFT PertamaDi sektor 6.291.551, kami menemukan catatan MFT pertama. Posisinya berbeda dari yang dihitung oleh 32 sektor, dan kemudian sekelompok 16 catatan (dari 0 hingga 15) terus mengikuti. Mari kita memasuki posisi sektor 6 291 519 di tabel shift untuk memajukan 32 sektor.
Fig. 10Posisi catatan No. 16 harus diimbangi dari 12 551 431, tetapi di sana kami menemukan nol, bukannya merekam MFT. Kami akan melakukan pencarian serupa di sekitarnya.
Fig. 11 Catatan MFT 0x00000011 (17)Sebuah fragmen MFT besar terdeteksi, dimulai dengan catatan nomor 17 dengan panjang catatan 53.646) dengan pergeseran 17 sektor. Untuk posisi 12 155.431 kita akan menempatkan shift +17 sektor dalam tabel shift.
Setelah menentukan posisi fragmen MFT di ruang angkasa, kita dapat menyimpulkan bahwa ini tidak terlihat seperti kegagalan acak dan perekaman fragmen MFT oleh offset yang salah. Versi dengan penerjemah yang salah dapat dianggap dikonfirmasi.
Untuk lokalisasi lebih lanjut dari titik geser, kami mengatur perpindahan semaksimal mungkin. Untuk melakukan ini, kami menentukan berapa banyak penanda partisi NTFS akhir digeser (salinan dari sektor boot). Pada Gambar 7, pada offset 0x28, kata keempat adalah nilai ukuran partisi 0x00 00 00 00 00 00 01 13 09 A2 (18.024.866) sektor. Mari kita tambahkan offset partisi itu sendiri dari awal disk hingga panjangnya, kita akan mendapatkan offset marker NTFS akhir 18.024.866 + 63 = 18.024.929. Seperti yang diharapkan, tidak ada salinan yang diperlukan dari sektor boot. Ketika mencari di sekitarnya, itu terdeteksi dengan peningkatan pergeseran +12 sektor relatif terhadap fragmen terakhir MFT.
Fig. 12 Salin sektor boot NTFSKami mengabaikan salinan lain dari sektor boot pada offset 18 041 006, karena ini tidak terkait dengan bagian kami. Berdasarkan peristiwa sebelumnya, ditemukan bahwa dalam bagian tersebut terdapat selingan dari 61 sektor yang “muncul” dalam siaran, yang membagi data.
Kami melakukan pembacaan drive penuh, yang menghasilkan 34 sektor yang belum dibaca. Sayangnya, tidak mungkin untuk secara andal menjamin bahwa semuanya cacat dihapus dari daftar-P, tetapi disarankan untuk mempertimbangkan posisi mereka dalam analisis lebih lanjut, karena dalam beberapa kasus akan mungkin untuk menentukan titik perpindahan yang akurat ke sektor, dan tidak ke file.
Fig. 13 Disk membaca statistik.Tugas kita selanjutnya adalah menentukan perkiraan tempat kerja shift (akurat untuk file tempat mereka muncul). Untuk melakukan ini, kami akan memindai semua catatan MFT dan membangun rantai lokasi file (fragmen file).
Fig. 14 Rantai lokasi file, atau fragmennya.Selanjutnya, pindah dari file ke file, kami mencari pada titik apa, bukan header file yang diharapkan, akan ada data lain, dan header yang diinginkan akan terdeteksi dengan pergeseran positif tertentu. Dan saat titik shift disempurnakan, kami mengisi tabel. Hasil pengisiannya akan lebih dari 99% file tanpa kerusakan.
Fig. 15 Daftar file pengguna (persetujuan diterima dari klien untuk menerbitkan tangkapan layar ini)Untuk menetapkan pergeseran titik dalam file individual, Anda dapat melakukan pekerjaan tambahan dan, jika Anda mengetahui struktur file, temukan sela-sela data yang tidak terkait dengannya. Tetapi dalam tugas ini tidak layak secara ekonomi.
PS Saya juga ingin memohon kepada rekan-rekan yang tangannya sudah pernah menggunakan disk ini. Harap berhati-hati saat bekerja dengan firmware perangkat dan data layanan cadangan sebelum mengubah apa pun, dan juga jangan biarkan masalah ini diperparah dengan sengaja jika Anda tidak dapat menyetujui dengan klien tentang pekerjaan tersebut.
Posting berikutnya: Diagnosis mandiri hard drive dan pemulihan dataPosting sebelumnya: Menghemat pertandingan atau memulihkan data dari HDD kisi Seagate ST3000NC002-1DY166