Install Arch Linux alongside Luks, BTRF, EFISTUB, and the sd-encrypt hook
Install Arch Linux alongside Luks, BTRF, EFISTUB, and the sd-encrypt hook
I've set up many unencrypted ext4 drives and some ext4+luks systems. Now I'm adding btrfs, efistub, and sd-encrypt. I've partitioned, formatted, made subvolumes, mounted, pacstrapped, and genfstabbed. I'm trying to configure the EFI boot parameters for EFISTUB. It's tricky figuring out the right commands from the docs to get the btrfs and sd-encrypt options working. So far, I've used efibootmgr --create with specific labels and images, but I'm unsure if it's correct. I think I need extra parameters to tell it about my subvolumes and that `/dev/nvme0n1p2` is a luks container. My partition layout is standard—EFI and luks root on `nvme0n1p{1,2}`. There are also `@, @home, @.snapshot` subvolumes. Need some guidance!
I achieved success using these kernel settings: rd.luks.name with the specified UUID, root directory, and partition flags. The command now points to your LUKS container instead of the mapped cryptroot. This results in: sudo efibootmgr --create --disk /dev/nvme0n1 --part 1 --label "Arch Linux" --loader /vmlinuz-linux --unicode 'rd.luks.name=xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx=cryptroot root=/dev/mapper/cryptroot rootflags=subvol=@ rw initrd=\amd-ucode.img initrd=\initramfs-linux.img'