Текущий релиз Arch
2 HDD , на каждом нарезан 1g efi system раздел остальное под lvm
Disk /dev/sda: 9 GiB, 9663676416 bytes, 18874368 sectors
Device Start End Sectors Size Type
/dev/sda1 2048 2099199 2097152 1G EFI System
/dev/sda2 2099200 18872319 16773120 8G Linux LVM
Disk /dev/sdb: 9 GiB, 9663676416 bytes, 18874368 sectors
Device Start End Sectors Size Type
/dev/sdb1 2048 2099199 2097152 1G EFI System
/dev/sdb2 2099200 18872319 16773120 8G Linux LVM
ос была проинсталлирована на /dev/sdb2 , затем сделал lvconvert -m1 чтобы получить заркало на sda2, lvconvert сообщил что все отлично и будет raid1 resilency
так создавал
vgextend vg /dev/sda2
lvconvert -m1 vg/root
это получил
lvs -a -o +devices
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert Devices
root vg rwi-aor--- 4.00g 100.00 root_rimage_0(0),root_rimage_1(0)
[root_rimage_0] vg iwi-aor--- 4.00g /dev/sdb2(1)
[root_rimage_1] vg iwi-aor--- 4.00g /dev/sda2(1)
[root_rmeta_0] vg ewi-aor--- 4.00m /dev/sdb2(0)
[root_rmeta_1] vg ewi-aor--- 4.00m /dev/sda2(0)
vgs -a -o +devices
VG #PV #LV #SN Attr VSize VFree Devices
vg 2 1 0 wz--n- 15.99g 7.98g root_rimage_0(0),root_rimage_1(0)
vg 2 1 0 wz--n- 15.99g 7.98g /dev/sda2(1)
vg 2 1 0 wz--n- 15.99g 7.98g /dev/sdb2(0)
vg 2 1 0 wz--n- 15.99g 7.98g /dev/sda2(0)
vg 2 1 0 wz--n- 15.99g 7.98g /dev/sdb2(1)
pvdisplay -m
--- Physical volume ---
PV Name /dev/sdb2
VG Name vg
PV Size <8.00 GiB / not usable 2.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 2047
Free PE 1022
Allocated PE 1025
PV UUID zzSyDP-xQuF-p9Os-ebv0-dugy-a6yK-q2SBDa
--- Physical Segments ---
Physical extent 0 to 0:
Logical volume /dev/vg/root_rmeta_0
Logical extents 0 to 0
Physical extent 1 to 1024:
Logical volume /dev/vg/root_rimage_0
Logical extents 0 to 1023
Physical extent 1025 to 2046:
FREE
--- Physical volume ---
PV Name /dev/sda2
VG Name vg
PV Size <8.00 GiB / not usable 2.00 MiB
Allocatable yes
PE Size 4.00 MiB
Total PE 2047
Free PE 1022
Allocated PE 1025
PV UUID CKsfF6-aNyp-rStO-IaDB-J3sp-wn5V-Fkc0NV
--- Physical Segments ---
Physical extent 0 to 0:
Logical volume /dev/vg/root_rmeta_1
Logical extents 0 to 0
Physical extent 1 to 1024:
Logical volume /dev/vg/root_rimage_1
Logical extents 0 to 1023
Physical extent 1025 to 2046:
FREE
установил grub в esp , само ядро лежит на lvm. Конфиг grub
cat /efi/grub/grub.cfg
menuentry 'Arch Linux, with Linux linux' {
..
set root='lvmid/1YMttW-DhDc-Sk9s-QuyC-tEIM-iY75-xqj8aW/192Is5-CAez-XEwC-c1ZN-cn1z-doKd-WbB9Zc'
..
echo 'Loading Linux linux ...'
linux /boot/vmlinuz-linux root=/dev/mapper/vg-root rw loglevel=3
echo 'Loading initial ramdisk ...'
initrd /boot/initramfs-linux.img
}
скопировал содержимое efi system между обоими дисками, добавил ссылки на загрузчики в nvram
efibootmgr -c -b 1 -d /dev/sdb -p 1 -L "GRUB 1" -l "\EFI\GRUB\grubx64.efi"
efibootmgr -c -b 2 -d /dev/sda -p 1 -L "GRUB 2" -l "\EFI\GRUB\grubx64.efi"
т.е. должны получить возможность загрузится с любого диска при отказе одного. Так как на каждом идентичные ESP с загрузчиком и raid1 lvm. С двумя дисками без проблем загружаюсь с обоих загрузчиков меняя в bios порядок загрузки, часть с grub работает. Проблемы начинаются когда я отключаю целиком один диск. Загрузчик оставшегося запускает ядро но получаем
waiting for root device /dev/mapper/vg-root
и вываливаемся в консоль initrd без рута
ls /dev/mapper control .. пусто
в dmesg ошибок нет, он как будто и не пытался lvm том поднять pvs , vgs показывают что половинка lvm им видна, ругаются на disk missing том в статусе partial, тут все верно.
вопрос, почему не поднимается доступная половинка зеркала в рут и не идет загрузка? повторюсь, если оба диска подключены все работает отлично, при отключении любого из них все встает