I've checked with 'sudo lsinitrd' and I can see that
usr/lib/systemd/systemd-cryptsetup is there but cryptsetup is missing.
File /usr/lib/dracut/modules.d/90crypt/module-setup.sh
check() {
local fs
# if cryptsetup is not installed, then we cannot support encrypted
devices.
require_any_binary "$systemdutildir"/systemd-cryptsetup cryptsetup
|| return 1
...
install() {
...
if ! dracut_module_included "systemd"; then
inst_multiple cryptsetup rmdir readlink umount
Installation of dracut-config-generic (and dracut-config-rescue)
resulted in a bigger initrd but still unbootable. Same issue.
rdsosreport.txt excerpt:
[ 0.028165] localhost kernel: Kernel command line:
BOOT_IMAGE=/boot/vmlinuz-6.1.0-10-amd64
root=UUID=bdad388c-f3f2-4f53-9f70-04efe2bc60eb ro quiet
cryptdevice=UUID=bbbe98fd-58fa-4ab9-ba34-18f1c2e72c94:luks-bbbe98fd-58fa-4ab9-ba34-18f1c2e72c94
root=/dev/mapper/luks-bbbe98fd-58fa-4ab9-ba34-18f1c2e72c94 splash
resume=/dev/mapper/luks-e17af10a-e7fc-489c-943f-1713e5ad292a
[ 0.028263] localhost kernel: Unknown kernel command line parameters
"splash BOOT_IMAGE=/boot/vmlinuz-6.1.0-10-amd64
cryptdevice=UUID=bbbe98fd-58fa-4ab9-ba34-18f1c2e72c94:luks-bbbe98fd-58fa-4ab9-ba34-18f1c2e72c94",
will be passed to user space.
Can share full rdsosreport.txt if you deem that being useful.
[ 3.217924] localhost dracut-cmdline[190]: dracut-12 (bookworm)
dracut-059-4
[ 3.221575] localhost dracut-cmdline[190]: Using kernel command line
parameters: rd.driver.pre=btrfs
BOOT_IMAGE=/boot/vmlinuz-6.1.0-10-amd64
root=UUID=bdad388c-f3f2-4f53-9f70-04efe2bc60eb ro quiet
cryptdevice=UUID=bbbe98fd-58fa-4ab9-ba34-18f1c2e72c94:luks-bbbe98fd-58fa-4ab9-ba34-18f1c2e72c94
root=/dev/mapper/luks-bbbe98fd-58fa-4ab9-ba34-18f1c2e72c94 splash
resume=/dev/mapper/luks-e17af10a-e7fc-489c-943f-1713e5ad292a
Could it be the case that dracut simply lacks the requried kernel
command line parameters?
Debian (not sure which component would be responsible for it?) or
upstream dracut or Debian dracut might forget to configure the
appropriate kernel parameters? I found some insights in the archlinux wiki:
https://wiki.archlinux.org/title/dm-crypt/Encrypting_an_entire_system#Encrypted_boot_partition_(GRUB)
If using dracut, you may need a more extensive list of parameters, try:
kernel_cmdline="rd.luks.uuid=luks-deviceUUID rd.lvm.lv=MyVolGroup/root
rd.lvm.lv=MyVolGroup/swap root=/dev/mapper/MyVolGroup-root rootfstype=ext4
rootflags=rw,relatime"