Проблема может заключаться в том, что схема блокировки LVM не позволяет активировать группу томов.
Если lvm.conf имеет:
/etc/lvm/lvm.conf locking_type = 1 : locking_dir = "/var/lock/lvm"
Тогда каталог блокировки должен быть доступен для записи, чтобы группа томов была активирована. Это проблема на этапе checkroot, поскольку корневая файловая система только для чтения только в этой точке.
Можно установить для lock_type значение 0, но это сопряжено с риском потери данных.
Некоторые из команд lvm принимают опцию --ignorelockingfailure, которая позволяет временно обойти блокировку. Это используется в стартовых скриптах initrd.
Чтобы заставить checkroot работать, я добавил две строки, прежде чем они начали.
&& ! is_net_fs / && ! is_union_fs / ; then + lvm vgchange -ayl --ignorelockingfailure + lvm vgmknodes --ignorelockingfailure if touch -c / >& /dev/null ; then