Framework 16 Laptop Doesn't Recognize SSD as Boot Drive

I’m not sure if this is a Framework issue or a Linux issue, but my laptop no longer recognizes my SSD as a bootable drive. I had just installed a Fedora system update, and when I restarted to install the update the laptop came up with the error “Default Boot Device Missing or Boot Failed.” When using a live install of Fedora on a USB, I can see the SSD, and there doesn’t appear to be anything wrong with it or any data missing. The issue is that the BIOS doesn’t see it at all, so I have no idea what to do to fix this. If there is any way to fix this without completely reinstalling the OS that would be great, but I can reinstall it if that’s the only option.

Preface: I am not using Fedora, and I don’t know how Fedora’s installation process chooses to interact with the UEFI boot process. If Fedora places a boot file in the default UEFI boot location (\EFI\Boot\bootx64.efi on your NVMe’s EFI partition), then these observations are moot.

If the system is booted and it can’t find the boot menu item, the Framework 16 UEFI automatically and silently deletes the boot entry from its list. The way to add it back is to use efibootmgr, but what file you point to will depend on the specifics of your system – e.g., if Fedora uses something like Grub, you’ll have to refer to the Grub EFI file. (In my case, I build kernels that have the EFI stub, and so are directly bootable by the system.)

If you know your bootable file, and it’s named with a .EFI extension, you can use F2 during boot and go to the “Boot From File” option to manually select your kernel or bootloader to get back into your system to fix up the problem. This also acts as a handy verification that the file you’re about to add in with efibootmgr is the right one. :slight_smile:

Good luck!

1 Like

Thanks for your help! I tried that, but when I choose “boot from file” nothing shows up in the list… The only thing in the BIOS that even acknowledges the existence of the SSD is in the Setup Utility, in the Boot tab under “Attached Device List.” Every other menu option and tab I could find does not list it at all. I find this very strange because I can find it and access it extremely easily when I live boot the OS…
I’m sorry if I’m not providing enough information, I have been trying to figure this out all day and have been unable to find much information at all

An obnoxious attribute of that “boot from file” list is that it will only show files that have a .efi extension. I’m pretty sure [that Grub’s bootloader has an EFI extension], but Linux kernels with an EFI stub, I had to take an extra step to rename. Reaching for straws, but from the live USB, mount the EFI boot partition on your NVMe and see if you can figure out what the bootable file should be (and if it has a .efi extension or not).

1 Like

Do you have a fedora usb? You can boot into rescue mode and repair the OS - or at least… check the OS.

To clarify, if you boot into BIOS and select “boot menu” - nothing shows up?

I vaguely remember my FW13 machine doing something similar when I followed the “Hey there is a new update to Ubuntu 23.10! You should update it!”

Like an idiot I did and it resulted in a nonbootable system. I googled a few solutions that involved manually adding the boot file back and then having to login to the recovery console and manually running the patch updater because it didn’t actually update all the files it needed.

I read later that the auto update was booked and I should have waited until the Ubuntu 24.04.01? LTS came out to address this issue.

Sadly, it might just be faster to reinstall Linux cleanly and copy your files back over.

What is the make/model of the nvme?
What is the firmware version of the nvme?
What is the bios version of the FW16?