Pemulihan Block Device yang Tertimpa, Menggunakan TestDisk

Juni 4th, 2011 oleh Hendri Winarto Leave a reply »

Tadi malam ada siswa saya yang panik di FB gara-gara datanya ilang semua sehabis cp di command line Ubuntu. Kok bisa ? Kasusnya sepele, meski tidak seharusnya sampai terjadi. Dia lupa me-mount partisinya terlebih dahulu, jadi yang seharusnya copy file dilakukan ke mount point, malah ditujukan ke block device. Jadi, alih-alih melakukan copy sebagai berikut (saya asumsikan ini dijalankan sebagai root, atau melalui sudo) :


cp /etc/grub.d/05_debian_theme /media/documents

dia malah menggunakan ini :


cp /etc/grub.d/05_debian_theme /dev/sda5

Apa yang terjadi berikutnya adalah, partisi yang direpresentasikan sebagai block device /dev/sda5 kini tertimpa dengan file 05_debian_theme, atau setidaknya rusak strukturnya. Tidak jelas apa yang sebenarnya terjadi, karena bahkan tidak ada peringatan semacam “are you sure” dari sistem operasi. Hasilnya adalah, saat partisi tersebut akan di-mount, malah muncul peringatan error “NTFS signature is missing…” dst. Saat reboot ke OS Windows (dalam kasus ini laptop menggunakan mekanisme dual-boot Windows dan Ubuntu), Windows pun tidak bisa mendeteksi partisi tersebut dengan benar, bahkan menginstruksikan untuk memformat. Kalau sudah seperti ini, dan kebetulan itu partisi yang paling penting, semua kerjaan ada di sana, bisa nangis tu anak orang. 😀

Untuk menangani kasus ini, saya mencoba mensimulasikannya di VirtualBox menggunakan OS Ubuntu 10.10 yang selama ini memang saya pakai untuk eksperimen. Partisi saya resize, dengan mount point “/” berada di /dev/sda1 sebagai primary partition, sedangkan /dev/sda5  dan /dev/sda6 berada di dalam Extended Partition, masing-masing sebagai logical partition. Karena /dev/sda5 sudah digunakan sebagai swap, jadi di artikel ini saya gunakan /dev/sda6 untuk mensimulasikan “partisi penting berisi data yang banyak”, dengan filesystem NTFS.


tampilan output df -h

Berikut ini “rekonstruksi” kejadiannya :

pertama, kejadian asli dilakukan menggunakan sudo, namun biar tidak perlu menggunakan sudo berulang kali, saya lakukan sudo su terlebih dahulu (baris 1). Karena kejadiannya dalam kondisi partisi tidak di-mount, jadi saya unmount dulu (baris 3). “The determining action”, inti dari semuanya ini, pokok permasalahan, adalah saat ada proses copy sebuah file ke /dev/sda6, yang anehnya sekali lagi, tidak ada peringatan atau konfirmasi dari sistem sama sekali (baris 4). Pada baris 8 saya buat mount point, yang saya gunakan untuk melakukan mount partisi /dev/sda6 yang telah tertimpa (baris 9). Hasilnya gagal, dengan pesan error tersebut. Pada baris terakhir saya jalankan TestDisk, yang pada saat tersebut sudah terinstall. Jika belum terinstall, maka install terlebih dahulu (sebagai root, atau menggunakan sudo) dengan :

apt-get install testdisk

Pada tampilan awal, TestDisk akan menanyakan mengenai bagaimana kita mengatur log file untuk sesi ini. Pilih saja [Create]. Lalu, kita diminta memilih device yang tersedia :


dalam hal ini saya pilih /dev/sda dengan [Proceed].

Berikutnya ada pilihan partition table, pilih [Intel]

Pada layar berikutnya, pilih [Analyse]

Hasil dari Analyse mengoutputkan status “Invalid” :

Pilih [Quick Search] untuk melanjutkan…

Hasil dari Quick Search masih belum memuaskan :

tekan Enter untuk melanjutkan.

Pada layar berikutnya, pilih [Deeper Search].

Proses Deeper Search membutuhkan waktu yang lebih lama, jadi tunggulah dengan sabar sampai selesai hingga muncul tampilan kurang lebih sebagai berikut :

Eittt… jangan langsung continue. Penentuannya ada di sini. Partisi sudah tampak ditemukan, tapi strukturnya masih salah. Kalo kita ingat-ingat tadi, partisi NTFS dan swap merupakan logical partition (P) di dalam extended partition. Namun TestDisk pada titik ini membutuhkan kita untuk memberi tahunya bahwa partisi NTFS [MY_DOCS] bukanlah primary partition, begitu pula dengan Swap. Gunakan panah kanan/kiri untuk mengganti masing-masing huruf di sebelah kirinya menjadi L. Atau jika layout harddiskmu lain dengan kasus ini, sesuaikan menurut kondisi yang ada sebelumnya.

Tekan Enter setelah yakin bahwa strukturnya sudah disesuaikan sebagaimana seharusnya. Setelah ini, akan ada pilihan untuk [Write], maka pilihlah. Pada saat ada konfirmasiWrite partition table, confirm ? (Y/N), tentunya pilihlah Y.

Jika ternyata setelah itu muncul tampilan semacam ini, yang menyatakan bahwa Boot Sectornya ternyata error atau invalid,

Pilihlah [Rebuild BS] untuk membangun ulang Boot Sector. Pada tampilan berikutnya, pilih [Write], lalu sisanya kita tinggal cari jalan untuk keluar dari TestDisk dengan memilih Quit beberapa kali. Meski TestDisk menginstruksikan untuk reboot, kita sudah bisa melakukan test mount ulang partisi, pada contoh ini dengan :

mount -t ntfs-3g /dev/sda6 /media/MY_DOCS

hasilnya :

Semoga berhasil.

Advertisement

3 comments

  1. Aji Pangestu berkata:
    Firefox 4.0.1 Firefox 4.0.1 GNU/Linux GNU/Linux
    Mozilla/5.0 (X11; Linux i686; rv:2.0.1) Gecko/20100101 Firefox/4.0.1

    izin save page pak.. heh.heh.he
    sangat berguna jika hal ini terjadi pada saya pak…

  2. Derick berkata:
    Firefox 21.0 Firefox 21.0 Ubuntu x64 Ubuntu x64
    Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:21.0) Gecko/20100101 Firefox/21.0

    I see a lot of interesting articles on your website.
    You have to spend a lot of time writing, i know how to save you a lot of time, there is a tool that creates unique, google friendly posts in couple of seconds, just search in google –
    k2 unlimited content

Tinggalkan Balasan

ERROR: si-captcha.php plugin: GD image support not detected in PHP!

Contact your web host and ask them to enable GD image support for PHP.

ERROR: si-captcha.php plugin: imagepng function not detected in PHP!

Contact your web host and ask them to enable imagepng for PHP.