Reinstalled Fedora, and now GRUB menu doesn't show up, so can't access Windows dual-boot

Hi,
I have reinstalled Fedora, but now I can’t access my windows dual boot;
The GRUB menu doesn’t show up anymore.
What can I do to fix this?
Thanks!

But at least Fedora starts?

Yes, it does, Fedora starts.

Grub is now hidden by default.
Check this post: https://discussion.fedoraproject.org/t/hidden-grub-menu-in-fedora-30/680

You can let the menu to appear once, by pressing SHIFT during boot.

1 Like

I tried to press shift, but it doesn’t work

BTW, read the linked post. And the links to the documentation that you can find in the reply 2. They will explain what to do.

I read the documentation and got into GRUB, but it turns out that windows isn’t even listed.
What can I do?

try regenerate grub menu .

sudo bash -c " [ -d /sys/firmware/efi/efivars ] && grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg || grub2-mkconfig -o /boot/grub2/grub.cfg"

1 Like

Still doesn’t work…

If you are sure that Windows still exists, try from files manager mount windows partition and run grub2-mkconfig command again once or twice .

and if you have EFI make sure windows boot files and folders exists in this path .

sudo ls /boot/efi/EFI

1 Like

I tried to run the GRUB configuration twice with the windows partition mounted… still does not work.
Windows do not show up in the result for the EFI command.
Also, it turns out that I accidentally deleted the EFI partition when I deleted the partitions of the old install, does it matter?
Thanks

I’m sorry I can not know what you did specifically ,It needs more detail and I am using google translation so I can not help you very much .

Did you deleted it and returned to legacy bios or you re-created it?
If you are re-creating it search in youtube example “windows efi boot repair” .

You will probably need a windows cd or usb .

I have a video in Arabic, but it is a little old (windows 7) ,It’s best for you to search for it in your language that you understand .

1 Like

I’ve recreated the EFI partition.
I have found a solution to restore the Windows Efi files, but I’m afraid that the command will wipe my Fedora EFI files…
The command that I found is bcdboot.
What can I do?

I’m not sure about Windows behavior .

you can try taking a copy of /boot/efi/EFI/fedora and from fedora live and you can try to restore it later if there was a problem .

If that does not work, I can help you to restore Fedora boot loader from live usb (chroot) .

1 Like

So, now I can successfully boot into Windows, but GRUB doesn’t show up; it boots right into Windows, so I can’t boot into Fedora.
Will doing a grub2-install /dev/sda
and grub2-mkconfig -o /boot/grub2/grub.cfg
in a chroot evironment solve the problem?

Edit: Also, I checked, and the Fedora EFI files are still there.

1 Like

If Fedora boot files still exist try change boot order priority to fedora ==> from bios(uefi).

If this does not work, you need to provide information about Fedora partitions such as / and /boot(if exist ) and efi sudo fdisk /dev/sda -l and I will give you commands to repair fedora boot loader from live usb .

It worked! I am able to boot into Fedora!
However, I did a grub2-mkconfig and rebooted into the grub menu, but Windows still doesn’t show up on it.
What can I do to fix it?

When you run all the grub commands, have you made sure the windows partitions are mounted so grub can see them (I think this was a requirement previously, not sure it still applies but worth a try I guess).

I did that, and it said it added the Windows boot manager, but when I rebooted into the Grub menu Windows didn’t show up…

First try install/reinstall this packages .

sudo dnf install   shim os-prober efibootmgr grub2 grub2-efi
sudo dnf reinstall   shim os-prober efibootmgr grub2 grub2-efi

Then Run

sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

Reboot system but make sure that the value of GRUB_TIMEOUT in /etc/default/grub the is not 0 .

If all this does not work you probably need to try change GRUB_ENABLE_BLSCFG to false (But it is not recommended).

Then run

sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
3 Likes