Назад | Перейти на главную страницу

CentOS: установить модуль dm-raid в initramfs, чтобы включить загрузку lvm ​​raid?

У меня CentOS 7, и мне нужны зеркала lvm на моем корневом логическом томе.

У меня была некоторая паника после того, как я использовал "lvconvert -m3 cl_excalibur / root" для создания двух зеркал, и он не загружался. Логический том не активируется при загрузке, если это raid1. Я загрузился с liveUSB и использовал "lvconvert -m0", чтобы преобразовать его обратно в беззеркальный, и все вроде нормально. Но я вернулся на круги своя. Я полагаю, я должен использовать dracut -f --add<-drivers?> <name of the lvm raid kernel module>, но я не знаю точных аргументов, которые мне нужны.

Во время неудачной загрузки в dracut lvm tool я попробовал lvchange -ay cl_excalibur/root, но lvm пожаловался на то, что модуля dm-raid нет в ядре. Вот что я думаю мне нужно установить.

Я нашел файл /usr/lib/modules/3.10.0-1062.1.1.el7.x86_64/kernel/drivers/md/dm-raid.ko.xz. Однако я не знаю, какой флаг добавления использовать и как перейти от имени файла к аргументу, который требует dracut.

Этот хост важен для нашей инфраструктуры, поэтому я еще ничего не пробовал. Теперь я создал виртуальный сервер CentOS 7, так что я могу работать с dracut и grub2, но я буду признателен за любую помощь :)

Похоже, решение состоит в том, чтобы отредактировать /etc/dracut.conf, вставить несколько строк в назначения для add_dracutmodules и add_drivers и включить значения «yes» для mdadmconf и lvmcomf:

# dracut modules to add to the default
add_dracutmodules+="dm lvm dmraid mdraid"

# additional kernel modules to the default
add_drivers+="dm_mod dm_mirror dm_log dm_region_hash "

# install local /etc/mdadm.conf
mdadmconf="yes"

# install local /etc/lvm/lvm.conf
lvmconf="yes"

Единственная странность в том, что мне нужно было включить пробел после последнего драйвера ядра и перед закрывающей кавычкой. В противном случае dracut объединяет два имени драйвера в одно.

После использования lvconvert -m2 на корневом логическом томе я дождался завершения зеркалирования, проверив с помощью lvs -a -o name,copy_percent,devices centos_agamemnon. Затем я продолжил

dracut -f 
grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg

И перезагрузился. Кажется, все в порядке, и я менее уязвим для следующего, неизбежного отказа жесткого диска.