The underlying cause of this appears to be a missing dependency. Dracut
doesn't include cryptsetup in the initrd if systemd is used within the
initrd - in that instance it requires systemd-cryptsetup.
systemd-cryptsetup is not installed by default when one installs
dracut, leaving the user with no way of decrypting their disk on next
reboot.

Installing systemd-cryptsetup and then making dracut regenerate the
initrd fixes the issue - the user now gets a prompt to type their
decryption passphrase at. (Granted, it's not a very *clear* prompt -
all you see is a gray rectangle that looks vaguely like a text box,
with no text or other indicator that you're supposed to type your
disk's passphrase there. But, it's *a* prompt at least.)

To reproduce the fix:

* Download the latest Debian Testing XFCE live ISO
* Boot it in VirtualBox
* Install Debian with manual partitioning, creating an unencrypted
  /boot directory and an encrypted root directory
* Reboot into the installed system, decrypting with your passphrase
  when prompted
* Take a snapshot
* Install dracut - `sudo apt install dracut`
* Reboot, see that you never get a prompt to decrypt the disk
* Restore the snapshot you made earlier
* Install dracut - `sudo apt install dracut`
* Install systemd-cryptsetup - `sudo apt install systemd-cryptsetup`
* Reconfigure dracut to regen the initrd - `sudo dpkg-reconfigure
  dracut`
* Reboot, see that you get a prompt now
* Enter your disk passphrase
* System should boot successfully

This probably just requires systemd-cryptsetup to be added as a
dependency of dracut. I'll test it out, if it works I'll try and submit
the fix.

Reply via email to