Thanks for the write-up; just hit this during work.
I was like the whole point of atomic desktops is that upgrades are supposed to be safe. Surely doing the one thing they were designed for would not bring my entire system down with no way to recover.
You can imagine how surprised I was when I upgraded from somewhere around 2024-10-01 to the latest release and was met with the grub shell.
Managed to boot back into 2024-10-01 thanks to the solution here. However, when I again upgrade to the latest release and try to boot into it, I get dropped into a Dracut shell with an error that goes like: initrd-parse-etc.service: Failed at step EXEC spawning /usr/lib/systemd/systemd-sysroot-fstab-check: No such file or directory
The contents of rdsosreport.txt
towards the end:
[ 9.515976] fedora systemd[1]: Starting dracut-pre-mount.service - dracut pre-mount hook...
[ 9.547493] fedora systemd[1]: Finished dracut-pre-mount.service - dracut pre-mount hook.
[ 9.548490] fedora systemd[1]: Starting systemd-fsck-root.service - File System Check on /dev/disk/by-uuid/10990739-7812-4b00-a459-041a2c57e6fb...
[ 9.569053] fedora systemd[1]: Finished systemd-fsck-root.service - File System Check on /dev/disk/by-uuid/10990739-7812-4b00-a459-041a2c57e6fb.
[ 9.569891] fedora systemd[1]: Mounting sysroot.mount - /sysroot...
[ 9.575006] fedora kernel: BTRFS: device label fedora_fedora devid 1 transid 179987 /dev/nvme0n1p3 (259:3) scanned by mount (865)
[ 9.575024] fedora kernel: BTRFS info (device nvme0n1p3): first mount of filesystem 10990739-7812-4b00-a459-041a2c57e6fb
[ 9.575031] fedora kernel: BTRFS info (device nvme0n1p3): using crc32c (crc32c-intel) checksum algorithm
[ 9.575037] fedora kernel: BTRFS info (device nvme0n1p3): using free-space-tree
[ 9.605180] fedora systemd[1]: Mounted sysroot.mount - /sysroot.
[ 9.606004] fedora systemd[1]: Starting ostree-prepare-root.service - OSTree Prepare OS/...
[ 9.631025] fedora ostree-prepare-root[882]: Resolved OSTree target to: /sysroot/ostree/deploy/fedora/deploy/df7cb795e86cc8579d1a1cf3c20f496541030f609ce02da2c32f26ccfd0e72ee.0
[ 9.631266] fedora ostree-prepare-root[882]: sysroot.readonly configuration value: 1 (fs writable: 1)
[ 9.631266] fedora ostree-prepare-root[882]: Using legacy ostree bind mount for /
[ 9.634068] fedora systemd[1]: sysroot-ostree-deploy-fedora-var.mount: Deactivated successfully.
[ 9.634116] fedora systemd[1]: sysroot.tmp-usr.mount: Deactivated successfully.
[ 9.634148] fedora systemd[1]: sysroot.tmp-etc.mount: Deactivated successfully.
[ 9.634177] fedora systemd[1]: sysroot.tmp.mount: Deactivated successfully.
[ 9.634479] fedora systemd[1]: Finished ostree-prepare-root.service - OSTree Prepare OS/.
[ 9.634875] fedora systemd[1]: Reached target initrd-root-fs.target - Initrd Root File System.
[ 9.635462] fedora systemd[1]: Starting initrd-parse-etc.service - Mountpoints Configured in the Real Root...
[ 9.637446] fedora (ab-check)[885]: initrd-parse-etc.service: Unable to locate executable '/usr/lib/systemd/systemd-sysroot-fstab-check': No such file or directory
[ 9.637460] fedora (ab-check)[885]: initrd-parse-etc.service: Failed at step EXEC spawning /usr/lib/systemd/systemd-sysroot-fstab-check: No such file or directory
[ 9.637835] fedora systemd[1]: initrd-parse-etc.service: Main process exited, code=exited, status=203/EXEC
[ 9.638039] fedora systemd[1]: initrd-parse-etc.service: Failed with result 'exit-code'.
[ 9.638277] fedora systemd[1]: Failed to start initrd-parse-etc.service - Mountpoints Configured in the Real Root.
[ 9.638331] fedora systemd[1]: initrd-parse-etc.service: Triggering OnFailure= dependencies.
[ 9.638966] fedora systemd[1]: Stopped target basic.target - Basic System.
[ 9.638997] fedora systemd[1]: Reached target initrd-fs.target - Initrd File Systems.
[ 9.639013] fedora systemd[1]: Stopped target sysinit.target - System Initialization.
[ 9.639037] fedora systemd[1]: dracut-pre-mount.service: Deactivated successfully.
[ 9.639075] fedora systemd[1]: Stopped dracut-pre-mount.service - dracut pre-mount hook.
[ 9.639152] fedora systemd[1]: dracut-initqueue.service: Deactivated successfully.
[ 9.639179] fedora systemd[1]: Stopped dracut-initqueue.service - dracut initqueue hook.
I can reboot and go back to 2024-10-01 without any problems, but going to the latest release keeps failing with that error.
I also had the ostree.prepare-root.composefs=0
parameter in my kernel boot commands before issuing the upgrade to the latest release.
I would appreciate any insights into how I can proceed with the upgrade from 2024.10.01 without dropping into a Dracut shell.
The only thing I could find was this reddit post for OpenSUSE:
After further digging, I found out that I can successfully update to the latest Fedora 40 version. But upgrading from there to any Fedora 41 version causes the above issue.
Looking at the changes and taking the reddit post into account, I suspect the problem lies here:
switcheroo-control 2.6-5.fc40 -> 2.6-6.fc41
symlinks 1.7-10.fc40 -> 1.7-11.fc41
system-config-printer-libs 1.5.18-9.fc40 -> 1.5.18-11.fc41
system-config-printer-udev 1.5.18-9.fc40 -> 1.5.18-11.fc41
systemd 255.14-1.fc40 -> 256.11-1.fc41
systemd-container 255.14-1.fc40 -> 256.11-1.fc41
systemd-libs 255.14-1.fc40 -> 256.11-1.fc41
systemd-networkd 255.14-1.fc40 -> 256.11-1.fc41
systemd-oomd-defaults 255.14-1.fc40 -> 256.11-1.fc41
systemd-pam 255.14-1.fc40 -> 256.11-1.fc41
systemd-resolved 255.14-1.fc40 -> 256.11-1.fc41
systemd-udev 255.14-1.fc40 -> 256.11-1.fc41
taglib 1.12-10.fc40 -> 1.13.1-1.fc41
tar 2:1.35-3.fc40 -> 2:1.35-4.fc41