Sebelum menjalankan salah satu perintah dalam artikel ini, pastikan Anda memiliki backup yang baik dari drive karena upaya untuk memperbaiki bad sector dapat mengakibatkan file system korup. Ini berarti ada kemungkinan untuk kehilangan sebagian dari file data atau metadata yang digunakan untuk mencari file dan direktori pada drive. Tools dari produsen dan pihak ketiga mungkin hanya sebagai utilitas sistem operasi.
Scanning Disk untuk Bad Sektor
Setiap sistem operasi memiliki alat untuk scaning disk untuk mencari bad sector. Beberapa secara otomatis dipanggil saat startup jika komputer mendeteksi shutdown yang tidak benar. Sebagai contoh, Windows mempertahankan “dirty bit” di Master File Table (MFT) pada volume NTFS atau File Allocation Table(FAT) pada drive FAT16 / 32.
Selama boot, program autochk mencari nilai ini dan jika sudah diatur, itu akan berjalan versi singkat dari tindakan yang dilakukan oleh chkdsk pada semua volume yang ditandai. Proses serupa juga digunakan oleh sistem operasi modern lainnya.
Windows
Baig pengguna Windows, bisa menggunakan perintah di cmd ckhdsk /r atau chkdsk /b yang dapat dijalankan setiap saat untuk mencari bad sector. Ini akan menjalankan tes pertama untuk memverifikasi konsistensi metadata drive sebelum lolos dari bad sector. Waktu yang digunakan tergantung dari jumlah volume, direktori, dan file yang digunakan. Perbedaan antara kedua perintah adalah yang kedua akan mengevaluasi kembali sektor yang sudah ditandai buruk oleh sistem operasi.
Windows juga memiliki tools GUI yang dapat digunakan untuk melakukan pemeriksaan yang sama. Tools ini dapat diakses dengan membuka Windows Explorer > klik kanan Drive yang ingin dicek > Properties > Tools tab > Check now… > check “Scan for and attempt recovery of bad sectors” > Start.
Alat ini tidak menandai bad sector secara individu, menandai seluruh cluster buruk dalam MFT atau FAT dan merelokasi seluruh cluster yang tidak terpakai lagi pada drive. Hal ini dapat terjadi jika hardware drive tidak dapat remap bad sector untuk alasan apapun.
Linux
Meskipun program badblocks dapat digunakan untuk mencari blok bad sector pada partisi disk pada sistem Linux, saya sarankan Anda menggunakan e2fsck -c atau varian fsck yang sesuai untuk filesystem yang anda gunakan. Hal ini memastikan bahwa parameter yang tepat disampaikan ke program badblocks.
Parameter yang salah dapat menyebabkan kerusakan permanen pada filesystem. Parameter -c melakukan tes read-only pada volume. Jika Anda ingin menggunakan tes baca-tulis, Anda bisa menggunakan parameter cc.
Ketika menggunakan -c atau cc, seluruh daftar blok bad sector dibangun kembali. Jika Anda ingin menyimpan entri yang ada dalam daftar dan hanya menambahkan blok baru ke dalam daftar, tambahkan -k (keep). Jika Anda menduga telah terjadi kerusakan pada drive itu sendiri dan/atau filesystem, Anda juga mungkin ingin menambahkan -p (preen) yang akan berusaha secara otomatis untuk memperbaiki kerusakan. Ini akan memberitahu Anda jika tidak dapat memperbaiki kesalahan yang ditemukan.
Peralatan Produsen
Produsen drive memiliki perangkat lunak diagnostik mereka sendiri yang dapat digunakan untuk melakukan analisis permukaan dan mengontrol fitur khusus untuk drive mereka. Western Digital memiliki Data Lifeguard untuk Windows untuk drive mereka, sementara Seagate memiliki SeaTools untuk Windows yang dapat digunakan untuk menguji Seagate, Maxtor, dan Samsung drive.
Keduanya menawarkan pilihan untuk pengujian dan memperbaiki drive yang terkait tetapi Anda perlu berhati-hati tentang apa itu tes destruktif dan yang non-destruktif. Dalam kedua kasus, Anda masih harus memiliki cadangan saat sebelum melanjutkan.
Tools Pihak Ketiga
Ada juga alat-alat pihak ketiga seperti SpinRite dari Gibson Research Corporation yang mengakses drive di bawah tingkat sistem operasi dalam rangka untuk melakukan tugas mereka. Ia melewati BIOS dan berinteraksi langsung dengan hard drive controller. Hal ini terutama untuk pemulihan data tetapi juga dapat digunakan untuk melakukan analisis permukaan dan verifikasi sebelum menempatkan drive baru ke dalam layanan.
SpinRite memang memiliki keterbatasan. Karena berjalan pada sistem operasi FreeDOS dan menggunakan CHS untuk mengakses drive, hanya dapat mengakses 228 (268435456) sektor pertama. Jadi drive yang menggunakan sektor 512 byte akan terbatas pada 128 GB dan drive menggunakan 4K sektor akan dibatasi untuk 1 TB.
Apakah Bad Sector Dapat Diperbaiki?
Cacat fisik dari produsen, head crash dan sebagian kesalahan lainnya yang terdeteksi oleh controller umumnya tidak dapat diperbaiki.
Tools Sistem Operasi
Hal ini kadang-kadang mungkin bisa untuk memulihkan blok atau cluster yang telah ditandai buruk oleh sistem operasi. Karena cluster biasanya beberapa sektor dan bad sector tunggal akan mendapatkan seluruh cluster yang ditandai buruk, itu kadang-kadang mungkin bisa untuk memulihkan cluster.
Hal ini karena hard drive controller mungkin tidak berurusan dengan bad sector sebelum sistem operasi memiliki masalah dengan itu. Ingat, drive umumnya tidak tahu ada sesuatu yang salah sampai tidak bisa membaca sektor dan itu tidak berusaha untuk remap sektor kecuali ada banyak kegagalan membaca atau menulis.
Jika hard drive controller telah mengalokasikan kembali bad sector setelah sistem operasi menandai cluster buruk, lalu kembali menjalankan perintah yang sesuai untuk mengevaluasi ulang blok buruk (chkdsk /b untuk Windows, e2fsck cc untuk Linux – Anda tidak harus menggunakan opsi -k sini karena akan menjaga daftar saat blok buruk) harus jelas dari daftar.
SpinRite
Memantau Status Drive
Smart Counters
- Counter 5 (Reallocated Sectors Count) adalah jumlah total sektor yang telah dialokasikan dan ditempatkan pada G-LIST sejak dimasukkan ke dalam layanan. Ini tidak termasuk sektor yang ditandai di pabrik. Data mentah adalah jumlah yang benar sehingga lebih rendah lebih baik.
- Counter 10 (Spin Retry Count) menunjukkan berapa kali yang diperlukan drive untuk mencoba untuk berputar sampai mencapai kecepatan operasional jika percobaan pertama tidak berhasil. Peningkatan atribut ini menunjukkan masalah mekanis dengan drive atau kemungkinan masalah listrik.
- Counter 187 (Reported Uncorrectable Errors) adalah jumlah kesalahan ECC yang tidak dapat diperbaiki oleh drive controller. Lebih rendah lebih baik ketika melihat nilai baku.
- Counter 188 (Command Timeout) adalah jumlah operasi yang dibatalkan pada perangkat. Ini umumnya akibat dari masalah dengan masalah koneksi listrik atau kabel data. Sekali lagi, nilai data mentah harus rendah.
- Counter 195 (Hardware ECC Recovered) adalah implementasi khusus vendor sehingga nilai-nilai mungkin tidak selalu mewakili kondisi yang sama. Secara umum, itu adalah hitungan jumlah berapa kali koreksi ECC yang diperlukan untuk mengembalikan data yang benar dari drive.
- Counter 196 (Reallocation Event Count) merupakan jumlah berapa kali sektor telah memicu peristiwa remap oleh controller. Ini penting, upaya sukses dan berhasil remap sektor. Hal ini tidak didukung oleh semua produsen.
- Counter 197 (Current Pending Sector Count) adalah jumlah sektor yang saat ini ditandai tidak stabil dan akan memetakan kembali jika upaya membaca berikutnya berhasil atau kalau ditulis berikutnya. Counter ini dikurangi setelah sektor tersebut telah berhasil dipetakan.
- Counter 198 (Offline Uncorrectable Sector Count) adalah jumlah total kesalahan ketika membaca atau menulis sektor. Jika ini mulai naik, ada masalah dengan permukaan disk atau subsistem mekanik.