Hi I have F41 KDE spin installed and working well, but want to change the grub 2 menu background and have not found a way to do that, I don’t want to use grub-customizer any one know how to place a custom grub menu background image? I have use debian distros for awhile and it relatively easy to do on them. Thanks
Fedora should now hide the grub menu by default, so use the following command:
sudo grub2-editenv - unset menu_auto_hide
Comment out GRUB_TERMINAL_OUTPUT="console"
in the /etc/default/grub file
Add GRUB_BACKGROUND=/your_image_path
in the /etc/default/grub file
Run sudo grub2-mkconfig -o /boot/grub2/grub.cfg
and reboot
Only on single os machines. Maybe OP is dual-booting…?
My answer may need to be adjusted, thank you.
Detailed instructions are as follows:
https://fedoraproject.org/wiki/Changes/HiddenGrubMenu
My understanding is that the OP would want to set a background image (as opposed to the default dark background) for the non-hidden GRUB menu which appears at startup/reboot.
If so, I would only advise against using grub-customizer
for this purpose, as it seems to cause issues to Fedora installations.
I do not use grub-customizer. It just adds too much stuff to a native grub install.
Thanks for the warning though.
Hi.
You did not say the grub menu wasn’t showing, you said you wanted to customize the background. If that is the case try adding to the /etc/default/grub file.
GRUB_BACKGROUND=“/boot/grub2/grub_splash.png”
Then run in a console
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
Obviously you would name the image file you are using, rather than mine. Hope this helps.
Thanks not Bob, I tried what you said but it did not work either. I’ll try again when I get time, But rather busy at the moment. Sorry for the late reply.
I have F40 in both my laptop and desktop, and I found that the desktop still has old grub 2.06 from previous Fedora install and never updated, so the background image works, but not in laptop, which has grub 2.12 boot since F40 was installed from scratch.
From what I’m observing, grub 2.12 boot does not have background_image command (gives a command not found error in grub command line) but grub 2.06 boot does. Also, the laptop can only do UEFI boot, so it has EFI System partition and Linux extended boot partition, while the desktop can boot with BIOS, so it only has BIOS boot partition.
I’m guessing this: grub 2.12 in UEFI 64-bit mode did not include background _image command (maybe security issue and/or UEFI limitation/restriction), while older grub 2.06 in BIOS boot works very well.
Further investigation and after installing grub using grub2-install, it looks like grub2 for i386 works with BIOS motherboard, but grub2 for x86_64 installed in UEFI-only motherboard is missing gfxterm_background module, so background_image command does not exist.
Well, I solved the issue with background image in 64-bit grub2 on UEFI-only laptops. The solution was in 5-year old redhat bugzilla comment:
The only change was I had to copy the module to /boot/grub2 instead of /boot/efi/EFI/fedora. Anyway, it requires modifying a grub script, so it’s better to wait for updated grub.