Raid 1, menjadi cermin, tergantung pada semua disk di cermin yang merupakan salinan satu sama lain. Ambil hard drive acak Anda, dan hard drive acak lainnya, dan Anda mungkin memiliki data berbeda di sana, sehingga melanggar anggapan ini. Inilah mengapa diperlukan inisialisasi. Itu hanya menyalin isi dari drive pertama ke orang lain. Perhatikan bahwa dalam beberapa kondisi Anda bisa lolos dengan tidak menginisialisasi drive - biasanya perangkat pabrik-baru sudah memiliki nol di semua tempat, sehingga Anda bisa mengabaikannya. The mdadm
opsi --assume-clean
melakukan ini, tetapi memperingatkan Anda:
--assume-clean
Beri tahu mdadm bahwa array sudah ada sebelumnya dan diketahui bersih. Ini dapat berguna ketika mencoba memulihkan dari kegagalan besar karena Anda dapat yakin bahwa tidak ada data yang akan terpengaruh kecuali Anda benar-benar menulis ke array. Ini juga dapat digunakan saat membuat RAID1 atau RAID10 jika Anda ingin menghindari sinkronisasi ulang awal, namun praktik ini - meskipun biasanya aman - tidak disarankan. Gunakan ini hanya jika Anda benar-benar tahu apa yang Anda lakukan.
Jika Anda tidak melakukannya, ada perbedaan antara drive dan itu dibaca, tidak ada yang tahu apa yang akan dibaca drive. Anda seharusnya cukup aman dengan sistem file (tetapi perhatikan di bawah), karena kemungkinan besar Anda akan menulis sebelum membaca apa pun dari perangkat itu, dan kemudian Anda jelas.
Perhatikan bahwa setidaknya Linux mdadm
akan menginisialisasi array di latar belakang. Anda dapat dengan senang hati membuat FS di atasnya detik pertama. Performa akan menurun sampai inisialisasi selesai, tetapi hanya itu yang terjadi.
Tapi:
a) Saat melakukan mkfs
beberapa utilitas, periksa apakah sudah ada sesuatu di drive itu. Meskipun ini hanya menyentuh beberapa wilayah drive yang terkenal, ia membaca sebelum Anda menulis apa pun, sehingga membahayakan Anda.
b) Jika Anda melakukan sinkronisasi ulang berkala array Anda, perangkat RAID tidak tahu apa-apa tentang FS Anda. Ini hanya membaca setiap blok dari setiap perangkat dan membandingkannya. Dan jika Anda tidak menggunakan FS copy-on-write (mis. ZFS atau BTRFS) dan tidak pernah mengisi FS Anda, sangat masuk akal jika sebuah blok tetap diinisialisasi dari perspektif FS selama bertahun-tahun.
Mengapa melakukan penyinkronan ulang dengan perangkat RAID1?
Untuk alasan yang sama Anda melakukan sinkronisasi ulang dengan perangkat RAID5 atau tingkat lainnya (kecuali RAID0). Itu membaca semua data dan membandingkan / memverifikasi checksum RAID (dalam RAID 5 atau 6). Jika sedikit dibalik dengan cara apa pun (karena memori HD mendapat flip spontan, karena ponsel Anda dan tetangga Anda hanya secara tidak sengaja mengganggu wilayah platter ini, apa pun) itu akan mendeteksi ketidakkonsistenan, tetapi tidak akan dapat tolong kamu. Jika, OTOH, salah satu hard drive hanya akan melaporkan "Saya tidak bisa membaca blok itu", yang lebih mungkin dengan drive yang gagal, Anda baru saja mendeteksi kegagalan lebih awal, dan mengurangi waktu Anda berjalan dalam mode terdegradasi (dihitung dari kegagalan drive, bukan dari saat Anda melihatnya). Raid tidak akan membantu Anda jika satu drive gagal dan sebulan kemudian yang lain gagal jika Anda tidak
RAID10
Sekarang, untuk RAID10 semua hal di atas berlaku. Bagaimanapun, RAID10 hanyalah cara cerdik untuk mengatakan 'Saya menempatkan dua perangkat RAID1 saya pada pasangan RAID0'.
Peringatan:
Ini semua perilaku yang tidak terdefinisi. Mengapa saya memeriksa di Linux, menggunakan mdadm
, implementasi RAID perangkat lunak lain mungkin berperilaku berbeda. Versi lain dari kernel dan / atau mdadm
alat Linux selain yang saya gunakan juga mungkin berperilaku berbeda.