GRUB no longer loads and Fedora doesn't boot

I have left my computer for a few days and now that I came back, GRUB no longer loads. I have secure boot and Windows and the Windows boot manager works fine if selected manually. GRUB loaded only twice in edge-cases like exiting UEFI and it doesn’t do it anymore. The one time I got into GRUB and tried booting Linux, I was met with a black screen. I tried reinstalling grub using chroot from a live-USB and regenerating its config. I tried re-creating the boot manager entries in Windows, then removed the new broken ones and it’s just not working. What things can I attempt to fix GRUB not loading and my system not booting? Thank you in advance!

Is it this known issue?:

If you get to a black screen that suggests the boot worked but the GPU is not working.
Does ctrl-alt-f3 get you to a text console?

Does your system have an NVIDIA GPU?

If so the usually cause of issues is the the drivers did not get built after a kernel update.

Also if you use a grub theme that is known to break booting.
The fix is to comment out the theme in the grub config.

This is not the issue. It’s not about Windows. It’s about GRUB itself not loading and meeting me with a black screen. Turns out that somehow secure boot stopped working properly out of nowhere. Disabling it made it work, but if I can, I might wanna find a solution to keep it on because of Windows.

I didn’t even manage to enter GRUB. The theme was fine. It loaded twice and not anymore. Secure Boot was the issue, but I’d still like to try and debug the root cause of the secure boot issue.

Maybe it’s this issue then?:


You might check to make sure that your shim loader is signed with both Microsoft keys.

I’m having the exact same issue. I did a standard update through dnf cli, I have not installed anything new or changed anying for a while. When I rebooted, I was met with the bios screen and it never even gets to grub. I thought I had messed up my install of grub so I booted up a live CD and reinstalled grub, nothing changed. Turned off secure boot and it works fine

I also have a windows install, but it is on a seperate drive (1 drive for windows, 1 drive for grub/fedora). I don’t think its related at all to windows though. Still looking for how to fix this issue as now every time I want to boot into windows I have to go into my bios and turn on secrure boot and change boot priority manually.

Did you setup a grub theme? If so removing the theme should get you working again.
You would need to boot from a live USB image to do the repair.

That fixed it, thank you!
What about having a theme prevents it from booting?

Maybe secure boot is detecting the theme as custom, unsigned code and not allowing it?

The same theme worked just fine with secure boot for the better part of like six months now.

Yeah, apparently it is due to a memory allocation problem with some PC models.

Shouldn’t I have gotten that update by now?

Yeah, I think Fedora Linux 44 is supposed to have the updated shim, but, IIUC, that isn’t the problem. The problem is that the kernel+initramfs+grub-theme is requiring too large of a block of memory in a specific range of memory addresses. You can read more about the problem here:

That doesn’t quite sound like it should be a problem though. It randomly stopped working, not even after an update. And it worked just fine before, consistently.

An update isn’t necessarily required to trigger the problem. If you reconfigure your PC in some way that requires more data in your initramfs (e.g. selecting a different plymoth boot theme), that can increase the required memory. Also, changing certain BIOS settings can affect how much memory is available in those lower memory addresses.

There were absolutely no changes made since the last boot though. I’ve had this exact setup for months now.

Sorry, I don’t know. Obviously something changed, but it might not be possible to determine what it was with any certainty.

Is there anything specific I could do to try and debug the issue?

If your issue is that one that I linked above where certain hardware cannot handle large pre-execution environment images, there might not be much you can do about it, short of reducing the size of your PE image (e.g. by disabling the grub theme).

As to figuring out what changed when and why, that could be quite difficult. It’s quite possible that MS Windows applied a BIOS firmware update while you weren’t looking. You would have to dig through your MS Windows logs to try to find evidence of that.