Resurrecting Fedora: Fixing the Invisible Option on GRUB Boot Menu
Image by Abigayl - hkhazo.biz.id

Resurrecting Fedora: Fixing the Invisible Option on GRUB Boot Menu

Posted on

Are you stuck in a Linux limbo, where your shiny new Fedora installation refuses to appear on the GRUB boot menu? Fear not, intrepid adventurer, for we’re about to embark on a quest to resurrect your Fedora option and restore balance to your GRUB universe!

The Mysterious Case of the Vanishing Option

Lets face it, installing a new Fedora alongside an existing Linux distribution can be a thrilling experience. However, when the excitement wears off, and you’re left staring at a GRUB menu that’s missing your new Fedora installation, the thrill quickly turns to frustration. But don’t worry, we’ve got you covered!

Theories and Troubleshooting

Before we dive into the fixes, let’s explore some possible reasons behind this phenomenon:

  • GRUB configuration issues: Something might have gone awry during the installation process, resulting in an incomplete or incorrect GRUB configuration.
  • Bootloader priorities: It’s possible that the new Fedora installation didn’t properly set its bootloader priority, causing it to be overlooked by GRUB.
  • Filesystem woes: Perhaps the new Fedora installation’s filesystem wasn’t properly detected or mounted, making it invisible to GRUB.

Finding the Culprit: GRUB Configuration

Let’s start by examining the GRUB configuration file. We’ll need to access the terminal and become the root user:

sudo su

Next, we’ll open the GRUB configuration file in a text editor (we’ll use nano in this example):

nano /boot/efi/EFI/fedora/grub.cfg

Take a close look at the contents of the file. You should see a section similar to this:

menuentry 'Fedora Linux' --class fedora --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-UUIDHERE' {
    load_video
    set gfxpayload=keep
    insmod gzio
    insmod part_gpt
    insmod ext2
    set root='hd0,gpt2'
    if [ x$feature_platform_search_hint = xy ]; then
        search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2  UUIDHERE
    else
        search --no-floppy --fs-uuid --set=root UUIDHERE
    fi
    linuxefi /boot/vmlinuz-5.11.10-300.fc33.x86_64 root=UUID=UUIDHERE ro rd.driver.blacklist=nouveau modprobe.blacklist=nouveau $tuned_params
    initrdefi /boot/initramfs-5.11.10-300.fc33.x86_64.img $tuned_params
}

Identify the menuentry section corresponding to your new Fedora installation. If you don’t see it, or if the configuration looks incomplete, we’ll need to create a new menuentry section.

Creating a New Menu Entry

If the previous section didn’t reveal a menuentry for your new Fedora installation, let’s create a new one. We’ll need to gather some information about the installation:

First, find the UUID of your new Fedora installation’s root partition:

blkid

Take note of the UUID corresponding to the root partition (usually labeled as /dev/sdaX or /dev/nvme0n1pX).

Next, create a new menuentry section in the grub.cfg file:

menuentry 'Fedora Linux (new installation)' --class fedora --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-NEW_UUID_HERE' {
    load_video
    set gfxpayload=keep
    insmod gzio
    insmod part_gpt
    insmod ext2
    set root='hd0,gptX'
    if [ x$feature_platform_search_hint = xy ]; then
        search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gptX --hint-efi=hd0,gptX --hint-baremetal=ahci0,gptX  NEW_UUID_HERE
    else
        search --no-floppy --fs-uuid --set=root NEW_UUID_HERE
    fi
    linuxefi /boot/vmlinuz-5.11.10-300.fc33.x86_64 root=UUID=NEW_UUID_HERE ro rd.driver.blacklist=nouveau modprobe.blacklist=nouveau $tuned_params
    initrdefi /boot/initramfs-5.11.10-300.fc33.x86_64.img $tuned_params
}

Replace NEW_UUID_HERE with the actual UUID of your new Fedora installation’s root partition, and hd0,gptX with the correct partition number (e.g., hd0,gpt2).

Rebuilding the GRUB Configuration

Now that we’ve created a new menuentry section, let’s rebuild the GRUB configuration:

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

This command will regenerate the GRUB configuration file, including our new menuentry section.

Testing the Fix

It’s time to reboot and test our fix:

reboot

When the GRUB menu appears, look for the new Fedora Linux (new installation) option. If everything went smoothly, you should be able to select it and boot into your new Fedora installation.

Troubleshooting Tips

If the new option still doesn’t appear, or if you encounter other issues, consider the following:

  • Double-check the UUID and partition number in the new menuentry section.
  • Verify that the new Fedora installation’s root partition is properly mounted and accessible.
  • Try booting with the nomodeset kernel parameter to disable graphics mode setting.
  • Consult the Fedora documentation and community resources for further guidance.

Conclusion

By now, you should have successfully resurrected your Fedora option on the GRUB boot menu. Remember, patience and persistence are key when troubleshooting Linux issues. With these steps, you’ve taken a crucial step in mastering the art of Linux problem-solving.

So, go ahead, reboot, and bask in the glory of your new Fedora installation’s triumphant return to the GRUB menu!

Solution Step-by-Step Guide
Examine GRUB configuration nano /boot/efi/EFI/fedora/grub.cfg
Create new menu entry menuentry 'Fedora Linux (new installation)' ...
Rebuild GRUB configuration grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg
Test the fix reboot

Happy troubleshooting, and remember to always keep your Fedora installation shiny and new!

Frequently Asked Question

Get the scoop on Fedora installation and GRUB boot menu issues!

Q: Why didn’t the new Fedora installation create a new boot entry in GRUB?

A: This might happen if the new Fedora installation didn’t update the GRUB configuration correctly. Try running `sudo grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg` (for UEFI systems) or `sudo grub2-mkconfig -o /boot/grub2/grub.cfg` (for BIOS systems) to regenerate the GRUB configuration file.

Q: Did I maybemess up the installation process?

A: Don’t worry, it’s easy to miss a step! Make sure you ran the `sudo grub2-install` command after installing the new Fedora system. This command installs GRUB to the boot loader and updates the configuration.

Q: Could the problem be related to my UEFI firmware settings?

A: Yes, it’s possible that your UEFI firmware settings are interfering with the GRUB boot menu. Check your UEFI firmware settings to ensure that the Fedora boot loader is set as the default or at least enabled.

Q: Are there any other commands I can try to resolve the issue?

A: Yes, you can try running `sudo efibootmgr` to list the boot entries and then use `sudo efibootmgr -c -w -d /dev/sdX -p Y -l EFI/fedora/shim.efi` to create a new boot entry (replace `/dev/sdX` with the device and `Y` with the partition number containing the EFI partition).

Q: What if none of these solutions work for me?

A: If none of the above solutions work, you can try reinstalling GRUB from the Fedora live media or seeking help from the Fedora community forums. They’ll be able to provide more specific guidance tailored to your situation.

Leave a Reply

Your email address will not be published. Required fields are marked *