У меня есть машина Ubuntu (9.10) с 4 дисками SATA. Каждый диск разделен на идентичные разделы, при этом первые несколько гигабайт зарезервированы для массива RAID 1 (/dev/md0
) для загрузочного тома, а остаток зарезервирован для RAID 5 (/dev/md1
).
Недавно я обновился до более крупных дисков, неоднократно выходя из строя и удаляя диск, заменяя его на более крупный, разбивая его на разделы и перестраивая на нем в соответствии с инструкциями. Вот. Все это завершилось успешно.
Однако при первой перезагрузке после обновления Ubuntu отправляет меня в оболочку initfs, утверждая, что не может найти корневое устройство. При проверке /proc/mdstat
, Обнаруживаю, что как-то собраны все диски (/dev/sda
, /dev/sdb
и т.д.) в один том RAID 5 под /dev/md1
, вместо того, чтобы собирать разделы в свои собственные массивы. Делать mdadm --stop /dev/md1; mdadm --assemble --scan
исправляет это, и оба тома собраны правильно (и смонтированы без проблем).
Что не так, и как это исправить?
Убедитесь, что у вас есть /etc/mdadm.conf
с правильной конфигурацией для вашего массива. Хотя ядро Linux может автоматически обнаруживать и собирать массивы mdadm, иногда оно делает забавные вещи. Имея /etc/mdadm.conf
устраняет неопределенность. Вот как выглядит мой:
DEVICE /dev/sdb /dev/sdc
ARRAY /dev/md0 metadata=0.90 UUID=b8fdfd55:524cecb2:2d164f4f:84bee133
Строка ARRAY получается из вывода этой команды:
mdadm --examine --scan
Надеюсь это поможет.