Raid 1, будучи зеркалом, зависит от того, являются ли все диски в зеркале точными копиями друг друга. Возьмите ваш случайный жесткий диск и другой случайный жесткий диск, и у вас там могут быть другие данные, что нарушает это предположение. Вот почему инициализация необходима. Он просто копирует содержимое первого диска другим. Обратите внимание, что в некоторых случаях вы можете обойтись без инициализации дисков - обычно на новых устройствах уже есть нули, поэтому вы можете просто проигнорировать это. mdadm
Вариант --assume-clean
делает это, но предупреждает вас:
--assume-clean
Скажите mdadm, что массив уже существовал и известен как чистый. Это может быть полезно при попытке восстановления после серьезного сбоя, поскольку вы можете быть уверены, что никакие данные не будут затронуты, если вы фактически не запишете в массив. Его также можно использовать при создании RAID1 или RAID10, если вы хотите избежать первоначальной повторной синхронизации, однако эта практика - хотя обычно безопасная - не рекомендуется. Используйте это, только если вы действительно знаете, что делаете.
Если вы этого не сделаете, между дисками и диском будет несоответствие, и вы не будете знать, что диск прочитает. Вы должны быть в полной безопасности с файловой системой (но обратите внимание на ниже), потому что, скорее всего, вы напишите, прежде чем что-то читать с этого устройства, и тогда все ясно.
Обратите внимание, что по крайней мере Linux mdadm
будет инициализировать массив в фоновом режиме. Вы можете счастливо создать FS поверх него в первую секунду. Производительность пострадает до завершения инициализации, но это все.
Но:
а) При выполнении mkfs
некоторых утилит проверьте, есть ли уже что-то на этом диске. Хотя это касается только нескольких известных областей диска, оно читает перед тем, как что-то написать, тем самым подвергая вас опасности.
б) Если вы делаете периодическую синхронизацию вашего массива, устройство RAID ничего не знает о вашей FS. Он просто читает каждый блок с каждого устройства и сравнивает их. И если вы не используете FS при копировании при записи (например, ZFS или BTRFS) и никогда не заполняете свою FS, вполне вероятно, что блок останется неинициализированным с точки зрения FS в течение многих лет.
Почему повторная синхронизация с устройствами RAID1?
По той же причине вы повторно синхронизируете с устройствами RAID5 или любым другим уровнем (кроме RAID0). Он считывает все данные и сравнивает / проверяет контрольные суммы RAID (в RAID 5 или 6). Если бит был каким-либо образом перевернут (потому что память HD стала самопроизвольно перевернутой, потому что мобильные телефоны вас и ваших 5 соседей просто случайно вмешались в эту конкретную область тарелки, что угодно), это обнаружит несогласованность, но не сможет помочь тебе. Если, OTOH, один из жестких дисков просто сообщит «Я не могу прочитать этот блок», что более вероятно при неисправном диске, вы только что обнаружили сбой раньше и сократили время работы в ухудшенном режиме (считая от сбой диска, а не с того момента, когда вы заметили это). Рейд не поможет вам, если один диск выйдет из строя, а через месяц другой выйдет из строя, если вы не
RAID10
Теперь для RAID10 все вышеперечисленное выполняется. В конце концов, RAID10 - это просто умный способ сказать «я помещаю два моих устройства RAID1 в пару RAID0».
Предостережение:
Это все неопределенное поведение. Почему я проверил на Linux, используя mdadm
другие программные реализации RAID, может вести себя по-другому. Другие версии ядра Linux и / или mdadm
инструментов, чем я использую, также могут вести себя по-другому.