LVM Snapshot Causes Boot Failure
If you've created an LVM Snapshot before rebooting your system and found yourself staring at the dracut rescue shell you might be stricken by the same problem as I was. Executing
init Uon the dracut commandline resulted in a descriptive error message (that might also be found in the journal/logs) about a missing dm-snapshot kernel module. I've attempted to troubleshoot the problem for a couple of hours, failing to add the kernel module in the end--as I wasn't able to get to a working kernel. Ultimately, the only solution was to remove the snapshot Volume, which proved to be more difficult than expected.
To remove the snapshot LV, one executes:
dracut #: lvm lvremove vg_name/lv_snapshot_nameHowever, you might be confronted by an error message there as well. It seems that the volume is locked at that time. To get around this, simply remove the /etc/lvm/lvm.conf file from the volatile initramfs "filesystem".
dracut #: rm /etc/lvm/lvm.conf dracut #: lvm pvscan dracut #: lvm vgscan dracut #: lvm lvscan dracut #: lvm lvremove vg_name/lv_snapshot_name dracut #: reboot -f
Note
To prevent this scenario from (re)occurring, you can ensure the dm-snapshot kernel module is built-in within the initramfs image:
dracut -f -v --add-driver="dm-snapshot"