Mungkinkah degradasi fisik hard disk dapat menyebabkan bit 'membalik' isi file tanpa OS 'memperhatikan' dan memberi tahu Anda tentang hal itu ketika membaca file? misalnya bisa 'p' dalam file teks ASCII (biner 0111000 0 ) berubah menjadi 'q' (0111000 1 ) dan kemudian pengguna (saya) dapat membuka file dan melihat 'q' tanpa menyadari bahwa kegagalan telah terjadi?
Saya tertarik pada jawaban yang berkaitan dengan FAT, NTFS, atau ReFS ... jika ada bedanya.
Saya ingin tahu apakah OS melindungi saya dari ini, atau apakah saya harus memeriksa data saya untuk invarian antara salinan / dari waktu ke waktu.
windows
hard-drive
filesystems
hardware-failure
data-integrity
topo Reinstate Monica
sumber
sumber
Jawaban:
Ya , ada sesuatu yang disebut bit busuk.
Tapi tidak , itu tidak akan memengaruhi Anda tanpa disadari.
Ketika sebuah drive menulis sektor ke piring-piring, ia tidak hanya menulis bit dengan cara yang sama mereka disimpan dalam RAM - ia menggunakan pengkodean untuk memastikan tidak ada urutan dari bit yang sama yang terlalu panjang , dan menambahkan kode ECC, yang memungkinkannya untuk memperbaiki kesalahan yang memengaruhi beberapa bit, dan mendeteksi kesalahan yang memengaruhi lebih dari beberapa bit.
Ketika drive membaca sektor, itu memeriksa kode ECC ini, dan memperbaiki data, jika perlu dan mungkin. Apa yang terjadi selanjutnya tergantung pada keadaan dan firmware drive, yang dipengaruhi oleh penunjukan drive.
(Ini adalah salah satu perbedaan utama antara drive yang dijual sebagai drive "Desktop", "NAS / RAID" atau "Video surveillance". Drive RAID dapat menyerah dengan cepat dan membuat pengontrol memperbaiki sektor untuk menghindari latensi pada sisi pengguna. Sebuah drive desktop akan mencoba lagi dan lagi, karena membuat pengguna menunggu beberapa detik mungkin lebih baik daripada memberi tahu mereka bahwa data hilang. Dan drive Video menilai laju data konstan lebih dari pemulihan kesalahan, karena bingkai yang rusak biasanya menang bahkan tidak diperhatikan.)
Bagaimanapun, drive akan tahu jika ada bit busuk, biasanya akan pulih dari itu, dan jika tidak bisa, itu akan memberi tahu controller yang pada gilirannya akan memberi tahu pengemudi yang akan memberitahu OS. Kemudian, tergantung pada OS untuk menyajikan kesalahan ini kepada pengguna dan menindaklanjutinya. Inilah sebabnya mengapa cybernard berkata
drive akan tahu ada yang salah dengan sektor ini, tetapi tidak tahu bit mana yang gagal. (Satu bit tunggal yang gagal akan selalu ditangkap oleh ECC).
Harap dicatat bahwa chkdsk, dan secara otomatis memperbaiki sistem file, jangan alamat reparing data dalam file. Mereka ditargetkan pada korupsi dengan struktur sistem file; seperti ukuran file yang berbeda antara entri direktori dan jumlah blok yang dialokasikan. Fitur self-healing NTFS akan mendeteksi kerusakan struktural dan mencegahnya memengaruhi data Anda lebih lanjut, mereka tidak akan memperbaiki data apa pun yang sudah rusak.
Tentu saja ada alasan lain mengapa data menjadi rusak. Sebagai contoh. RAM buruk pada pengontrol dapat mengubah data bahkan sebelum dikirim ke drive. Dalam hal itu, tidak ada mekanisme pada drive yang akan mendeteksi atau memperbaiki data, dan ini mungkin menjadi salah satu alasan mengapa struktur sistem file rusak. Alasan lain termasuk bug perangkat lunak biasa, padam saat menulis disk (meskipun ini ditangani oleh penjurnalan filesystem), atau driver sistem file yang buruk (driver NTFS di Linux secara default hanya-baca untuk waktu yang lama, karena NTFS direkayasa balik, tidak didokumentasikan , dan pengembang tidak mempercayai kode mereka sendiri).
Alasan-alasan lain inilah mengapa beberapa sistem file, seperti ZFS, menyimpan informasi checksum tambahan untuk mendeteksi kesalahan. Mereka dirancang untuk melindungi Anda dari lebih banyak hal yang bisa salah daripada hanya sedikit busuk.
sumber
Ya, hard drive dapat dan tidak terdegradasi tanpa peringatan dari OS. Ini disebut bit busuk . Saya tidak pernah menyaksikan sedikit pun kesalahan sendiri, tetapi saya telah melihat banyak hard drive di mana seluruh sektor gagal.
Windows tidak memiliki perlindungan bawaan terhadap konten file di luar struktur sistem file NTFS. Pikirkan NTFS sebagai buku: baik itu hanya melindungi daftar isi dan memverifikasi bahwa semuanya cocok. Namun, jika kerusakan ada di tengah-tengah halaman, ia tidak menawarkan perlindungan. FAT tidak punya apa-apa. Hard drive menggunakan koreksi kesalahan ECC berdasarkan per-sektor, tetapi drive tidak memberi tahu Windows. Beberapa jenis file secara khusus memiliki hash CRC, MD5, atau SHA untuk mendeteksi korupsi, tetapi mereka tidak memperbaiki apa pun.
Bahkan hash itu hanya memberitahu Anda ada masalah, tetapi tidak tahu di mana kesalahan itu berada.
Hard drive memiliki SMART yang memantau kesehatan hard drive, tetapi kecuali jika drive ada di ambang kematian, BIOS tidak akan memperingatkan Anda. Yang terburuk, SMART sering dinonaktifkan secara default di BIOS Anda. Anda dapat memantau angka-angka melalui perangkat lunak, tetapi drive yang berbeda memiliki masalah yang berbeda. Jika Anda memiliki banyak sektor yang dipindahkan, atau kesalahan ECC Anda terus meningkat. Jika Anda memiliki 100.000 ECC baru setiap hari, itu pertanda buruk.
Banyak jenis file tidak memiliki perlindungan terhadap bit busuk . Seperti, TXT dan BMP, yang tidak memiliki perlindungan sama sekali. Winrar memiliki opsi opsional untuk menambahkan data paritas ke arsip yang akan membuat file lebih besar, tetapi dapat mendeteksi (sebanding dengan jumlah data paritas yang ditambahkan) dan memperbaiki kesalahan semacam ini.
Semua program kompresi lain yang saya tahu mendeteksi kesalahan, tetapi tidak berdaya untuk melakukan apa-apa.
Akhirnya, kesalahan dalam suatu sektor akan sangat buruk ECC tidak dapat memperbaikinya, dan drive akan memberi Anda apa yang dibaca meskipun itu salah.
Anda dapat menggunakan QuickPar atau yang serupa untuk membuat file data paritas, tetapi sejauh yang saya tahu tidak ada cara untuk mengotomatiskannya. Misalnya, Anda benar-benar mengubah file sendiri ketika Anda harus memperbarui paritas secara manual. Anda juga dapat memiliki data paritas untuk sekelompok file, tetapi Anda mengubah 1 file dan seluruh set paritas harus dibuat ulang. Ini benar-benar sakit kepala bagi semua, tetapi sejumlah kecil file.
sumber
Ya itu mungkin. Windows hanyalah perangkat lunak. Perangkat lunak adalah serangkaian instruksi untuk diikuti komputer.
Pikirkan tentang jenis lain dari serangkaian instruksi: buku. Apa yang dapat dilakukan oleh instruksi-instruksi itu jika ditulis dalam sebuah buku yang diletakkan di rak dan tidak ada yang mau membuka buku itu dan membaca instruksi itu?
Sama seperti instruksi tertulis yang mengharuskan seseorang untuk membaca instruksi dan mulai mengikuti instruksi, perangkat lunak komputer membutuhkan perangkat keras untuk melakukan hal-hal yang berguna. Bahkan jika sebuah buku memiliki instruksi yang ditulis dengan akurasi luar biasa, itu tidak mencegah masalah jika seseorang memutuskan untuk membaca instruksi tetapi kemudian menerapkannya secara salah. Demikian pula, perangkat lunak tidak dapat mencegah perangkat keras melakukan hal-hal buruk. Jadi, perangkat keras yang rusak dapat secara fisik menang atas apa yang dapat dilakukan perangkat lunak apa pun, termasuk Microsoft Windows.
Sekarang, ReFS dapat dirancang dengan maksud agar perangkat lunak akan menyimpan detail tentang data, dan agar perangkat lunak membandingkan rincian itu nanti. Konsep sederhana adalah "checksum", di mana perangkat lunak menambahkan nilai-nilai tertentu dan memastikan bahwa nilai-nilai tersebut sesuai dengan hasil yang diharapkan. Ketika perangkat keras mengimplementasikan perangkat lunak itu, maka hasil buruk tertentu mungkin dapat dideteksi. Ini bahkan sangat mungkin untuk bekerja. Namun, karena jumlah masalah potensial, yang mungkin secara teoritis ada, pada dasarnya adalah angka tak terbatas, tidak ada jaminan bahwa perangkat lunak akan mendeteksi setiap masalah. (Ingatlah bahwa perangkat lunak adalah serangkaian instruksi yang telah dibuat sebelumnya.)
FAT sangat rendah pada fitur. FAT12 dirancang untuk floppy disk, dan FAT16 untuk sistem hingga 4GB (meskipun sebagian besar implementasi FAT16 dari Microsoft cenderung tidak bekerja di atas 2GB). Tanpa ekstensi VFAT, tak satu pun dari mereka mendukung nama file lebih dari 11 karakter (beberapa di antaranya akan berada di bagian yang disebut "ekstensi"). FAT hanya dirancang untuk menyimpan data pada saat kemampuan menyimpan data adalah konsep baru yang perlu diajarkan orang dewasa. Ketika FAT dianggap sebagai teknologi "terdepan", teknologi komputer belum cukup lazim dan rumit bagi orang untuk khawatir tentang fitur-fitur canggih.
NTFS menambahkan dukungan untuk beberapa fitur lainnya, mungkin yang paling utama memiliki sistem operasi dapat dengan mudah melacak izin pengguna. Ada berbagai versi NTFS. Misalnya, Moab menunjukkan bahwa Windows Server 2008 menambahkan dukungan untuk penyembuhan sendiri NTFS, yang dapat mendeteksi beberapa hal. Namun, fitur itu masih baru untuk Windows Server 2008, jadi itu bukan sesuatu yang didukung sama sekali oleh Windows XP (atau Windows Server 2003, atau sebelumnya). Bahkan masih, melihat daftar fitur, tampaknya ini melibatkan beberapa meta-data yang membantu sistem operasi melihat masalah yang sangat parah sehingga disk tidak dapat me-mount, atau area kunci lain dari disk yang mempengaruhi kernel sistem operasi. Itu tidak terlihat seperti setiap bagian data, di setiap file tunggal, akan terpengaruh oleh fitur tertentu ini.
Perangkat lunak untuk sistem operasi seperti itu sangat tidak mungkin untuk memperhatikan hal-hal seperti itu, kecuali jika mereka menyebabkan masalah penting bagi sistem operasi untuk menyelesaikan tugas. Mungkin ada beberapa pengecualian, seperti bagian dari sistem operasi yang memeriksa disk (CheckDsk / ChkDsk / ScanDisk / ScanDskW, tergantung pada sistem operasi), tetapi bahkan mereka akan agak terbatas pada apa yang dapat mereka deteksi, terutama karena sistem file tidak dapat menyimpan sejumlah besar data yang dimaksudkan untuk berguna untuk pemeriksaan disk.
(RAID5 mungkin lebih rentan untuk mendeteksi hal-hal seperti itu, dengan setiap bit memiliki bit paritas yang akan membantu melihat sesuatu yang tidak biasa. Bahkan kemudian, akan tergantung pada implementasi RAID untuk menjalankan pemeriksaan untuk melihat masalah. Jika masalah terjadi pada bagian dari disk yang tidak bekerja secara aktif, masalahnya mungkin tetap tidak diperhatikan sampai seseorang mencoba untuk mulai menggunakan data itu.)
Dalam waktu yang lebih baru, jumlah bit yang lebih besar berarti kemungkinan kecil, seperti peluang "1 banding 10 juta", lebih cenderung memengaruhi banyak hal. Masyarakat umum juga telah belajar tentang "sinar kosmik", yang mungkin berdampak kecil pada banyak hal. Karena bit sedang dijejali dengan sangat ketat di perangkat yang lebih baru, persyaratan fisik untuk mewakili bit lebih kecil, sehingga dampak kecil bahkan lebih mungkin dipusingkan dengan bagaimana bit dikenali. ReFS memiliki beberapa fitur yang dirancang untuk membantu mereka terdeteksi. Artikel Wikipedia tentang ReFS menyebut ini sebagai "pemeriksaan integritas otomatis". Seperti yang dideskripsikan sebagai fitur penting dari sistem file ini, fitur seperti itu kemungkinan lebih berkembang daripada dengan NTFS (dan tentu saja lebih dari FAT, yang sifatnya relatif sederhana,
sumber