(1)
Make the lvchange_activate function in /usr/share/initramfs-tools/scripts/local-top/lvm2 a while loop which executes the "lvchange" command repeatedly until the root LV appears
(2)
Utilize udevd to create the LV devices while wait-for-root is waiting for the root LV to appear. A hack for doing so is to replace in /lib/udev/rules.d/69-lvm-metad.rules the line 96
ACTION!="remove", ENV{LVM_PV_GONE}=="1", RUN+="/bin/systemd-run /sbin/lvm pvscan --cache $major:$minor --activate ay", GOTO="lvm_end"
with
ACTION!="remove", RUN+="/sbin/lvm pvscan --cache $major:$minor --activate ay"
A the moment I can see following solutions:
(1) initramfs- tools/scripts/ local-top/ lvm2 a while loop which executes the "lvchange" command repeatedly until the root LV appears
Make the lvchange_activate function in /usr/share/
(2) rules.d/ 69-lvm- metad.rules the line 96 PV_GONE} =="1", RUN+="/ bin/systemd- run /sbin/lvm pvscan --cache $major:$minor --activate ay", GOTO="lvm_end"
Utilize udevd to create the LV devices while wait-for-root is waiting for the root LV to appear. A hack for doing so is to replace in /lib/udev/
ACTION!="remove", ENV{LVM_
with
ACTION!="remove", RUN+="/sbin/lvm pvscan --cache $major:$minor --activate ay"