Моя ситуация отличается от вот этот.
У меня есть система CentOS с 3 жесткими дисками и следующие программные RAID-массивы:
/boot on RAID 1 over 2 disks
/ on RAID 5 over 3 disks
swap on RAID 0 over 2 disks (I believe)
Мой 3-й диск вышел из строя. Вначале ничего страшного, массив все еще работал. Но через 1 день, когда я был готов заменить плохой диск, система больше не может загружаться с новым диском в:
md: md2: raid array is not clean -- starting background reconstruction
raid5: cannot start dirty degraded array for md2
raid5: failed to run raid set md2
[...]
Kernel panic
Это останавливается здесь. У меня нет оболочки. Я пытался, но на спасательном диске, но не знаю, как оттуда перейти: мои массивы не видны, поэтому я не могу их восстановить. Точно такая же проблема, если я загружаюсь с 2-мя дисками или с плохим диском в качестве третьего диска.
Как я могу исправить массив теперь, когда у меня есть новый диск?
Каким-то образом вам удалось остановить массив в грязном состоянии (что означает, что система RAID не может быть уверена, что четность на всех дисках в порядке). Это может произойти, если питание машины было внезапно отключено или возникло другое событие, вызывающее пропуски записи.
Я подозреваю, что повторная сборка массива вручную с аварийного компакт-диска с использованием параметра --force может сработать, например:
mdadm --assemble --force /dev/md2 /dev/sda2 /dev/sdb2 missing
(заменив / dev / sd ... на существующий устройства, составляющие ваш массив RAID-5). Предполагая, что это работает и / proc / mdstat показывает собранный массив (в деградированном состоянии), вы можете добавить новый раздел, например:
mdadm /dev/md2 --add /dev/sdc2
Если первоначальная принудительная сборка не сделай трюк, тогда ты глубоко в ручье. За пару минут с Google нашел http://www.linuxforums.org/forum/servers/77867-eeek-cant-assemble-degraded-dirty-raid6-array.html который, кажется, решает аналогичную проблему, поэтому, возможно, стоит попробовать то, что описывается как работающее там (echo "clean" > /sys/block/md0/md/array_state
), но это немного более уродливый способ делать вещи.
Независимо от того, как вам удастся собрать RAID-массив, тот факт, что он грязный и поврежденный, означает, что его содержимому больше нельзя доверять. Файловая система могла иметь повреждение метаданных (что fsck должен fix), или может быть повреждено содержимое одного или нескольких файлов (чего вы не узнаете, не проверив содержимое всех файлов в разделе).
В Компакт-диск аварийного восстановления системы имеет инструменты mdadm, поэтому, если вы знаете, как их использовать, они должны быть вам полезны.