On my disk I have LVM configured as such:

  • One Volume Group "vg1", containing
    • One Logical Volume "lv1", containing a LUKS encrypted partition which is the root of a Debian Linux installation
    • One Logical Volume "00" containing another LUKS encrypted partition which is the root of a Qubes OS installation

I want the system to boot into Qubes; in other words, I need to unlock vg1/00 and then mount it as the root device.

The problem is that Grub only asks me to unlock logical volume "lv1". I can't make Grub ask to unlock the "00" logical volume no matter the kernel boot options.

Editing grub's command line at boot I can see root=/dev/mapper/luks-<UUID> as well as rd.lvm.vg=vg1/00 and rd.lvm.lv=luks.<UUID>. The UUID matches the correct logical volume.

How can I make sure that grub actually uses the rd.lvm boot options?

  • Are the kernels and initramfs in the root volumes? If so then it's probably really about grub, and you'll want to check the cryptomount commands in grub.cfg; if not then it probably has nothing to do with grub, you'll need to make sure each linux line has the appropriate DISTRO-SPECIFIC boot param for the unlocking the right device (e.g. in Arch Linux it's cryptdevice=) – Tom Yan Apr 16 '16 at 13:32
  • @TomYan I think you're right. Initramfs and kernel aren't in root but in /boot. I looked it up and it seems that Fedora uses different options like rd_LUKS_UUID, but yet to no avail. – lorenzog Apr 16 '16 at 14:22

Is qubes based on fedora? At least on Fedora/RHEL/CentOS you need a line in /etc/crypttab:

$NAME UUID=$UUID none luks

See crypttab(5).

Replace the $NAME with whatever you want and pass this to kernel in rd.luks.uuid, and $UUID with encrypted device's UUID (see blkid $DEV).

You will then need to regenerate init ramdisk (running dracut -f should do).

No idea if debian/qubes-os is using the same.

|improve this answer|||||

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.