I have a laptop, with some irrelevant operating system installed on its internal drive. I also have an external USB-C SSD drive with Fedora 38 installed. I know 38 recently went EOL - ironically, i was putting off upgrading because i didn’t want to risk breaking it!
A few days ago, i plugged the external drive in and booted from it, all fine. Last night i shut down and detached the disk. Today, i plugged in and booted again, but this time, the machine would not boot from the external drive. It flashed up a message too quickly for me to read, then went on to boot from the internal drive. I checked the boot order in the BIOS, and the external drive has priority, which suggests that the drive is somehow not bootable.
I plugged the drive into another machine (running Fedora 39), and booted a VM on it like so:
sudo qemu-system-x86_64 \
-enable-kvm \
-m 1024 \
--bios /usr/share/OVMF/OVMF_CODE.fd \
-drive file=/dev/sda
I know almost nothing about QEMU, so maybe this is the wrong way to do it, but it seemed to work.
In the VM, the bootloader runs, and i get to pick which kernel to boot with (i don’t get this far on the physical machine!). But after picking one (i have only tried the most recent), there is some sort of problem, and i am dropped into the dracut emergency shell:
I have no idea if this is related to the reason this drive won’t boot on a physical machine, or is somehow related to the fact that it is running in a VM.
I mounted the boot partition in the emergency shell (using blkid to list the partitions, then a normal mount to mount them), and copied over this rdsosreport.txt file, and also a dump of the system journal. These can be seen here: Installation not booting · GitHub
I am a bit baffled. I don’t know why this installation did not boot on the physical machine, and i don’t know how to debug that directly, given that it does not produce any output. I don’t know why this installation does not boot in a VM, and i don’t know if it’s for the same reason it doesn’t boot on the physical machine!
Does anyone have any thoughts on what might be going wrong? Or how i could investigate further?