Hide GRUB and Fix Plymouth Blank Screen on Ubuntu Dual Boot
Iwan Efendi3 min
Hide GRUB menu and fix Plymouth blank screen on Ubuntu dual boot by disabling os-prober and setting GRUB_GFXPAYLOAD_LINUX=keep.
I run Ubuntu and Windows 11 on the same laptop with dual boot setup, but I don't rely on GRUB to switch between them. I prefer pressing
This happens because Ubuntu runs
Add or ensure this line exists:
If you also don't need to see the GRUB menu on every boot, these two lines are what you want:
After all adjustments, the top of my
Save the file, then apply the changes:
Reboot — the GRUB menu won't appear anymore, and Windows is gone from the list.
Here's the bonus issue that surfaced after hiding GRUB. After rebooting, instead of seeing Ubuntu's usual boot animation, the screen just stayed black until GDM appeared.
The cause: when GRUB is skipped too quickly without setting up graphics mode, Plymouth doesn't get the "bridge" it needs to initialize its display. The animation fails to render, leaving only a blank screen.
The fix is to tell GRUB to lock the graphics mode and keep it active until the kernel takes over.
Add these two lines to
Or check in Settings → Displays.Add both lines anywhere in the file:Reboot and the Plymouth animation should appear normally.
After
F11 during boot to enter the BIOS boot menu and pick the OS from there. It feels more direct and cleaner.
The problem is GRUB still shows up every time Ubuntu boots. There's a menu with Ubuntu entries, and below it sits Windows Boot Manager — anyone using my laptop could boot straight into Windows without needing any password. That made me uncomfortable.
I figured if I never use the GRUB menu anyway, why not hide it completely? Let the boot jump straight from BIOS to Ubuntu's boot animation without that menu pause in the middle.
Version Note
This article was written using Ubuntu 25.10 (Plucky Puffin). The steps apply to Ubuntu 24.04 and above with GRUB 2.
Problem 1: Windows Appears in GRUB Menu
os-prober every time update-grub is called. The program scans all disk partitions and automatically adds entries for any other OS it finds — including Windows.
The solution is to disable os-prober through GRUB configuration.
Open the GRUB configuration file:
sudo nano /etc/default/grubGRUB_DISABLE_OS_PROBER=trueProblem 2: Unnecessary GRUB Menu
GRUB_TIMEOUT=0
GRUB_TIMEOUT_STYLE=hiddenGRUB_TIMEOUT=0 makes GRUB wait zero seconds. GRUB_TIMEOUT_STYLE=hidden hides the menu entirely. GRUB still works as your bootloader — it just does its job without displaying anything.
If Ubuntu Fails to Boot?
You can still access the emergency GRUB menu by holding
Shift or pressing Esc repeatedly during POST. GRUB will appear normally.Complete Configuration
/etc/default/grub looks like this:
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`( . /etc/os-release && echo ${NAME} )`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
GRUB_DISABLE_OS_PROBER=truesudo update-grubProblem 3: Plymouth Boot Animation Goes Blank
/etc/default/grub:
GRUB_GFXMODE=1920x1080
GRUB_GFXPAYLOAD_LINUX=keep1
Check your screen resolution
Adjust theGRUB_GFXMODE value to match your laptop or monitor's native resolution. To find it:xrandr | grep '*'2
Edit GRUB configuration
sudo nano /etc/default/grubGRUB_GFXMODE=1920x1080
GRUB_GFXPAYLOAD_LINUX=keep3
Apply changes
sudo update-grubGRUB_GFXPAYLOAD_LINUX=keep is the key — this option asks GRUB to maintain the graphics mode already set, instead of dropping it before the Linux kernel starts. Plymouth needs a ready graphics state, and this line ensures that.
Final Configuration

Zoom
The final GRUB configuration with all settings applied.
Here's my complete /etc/default/grub with all adjustments:
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`( . /etc/os-release && echo ${NAME} )`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
GRUB_DISABLE_OS_PROBER=true
GRUB_GFXMODE=1920x1080
GRUB_GFXPAYLOAD_LINUX=keepsudo update-grub and a reboot: no GRUB menu, no Windows entry, and Ubuntu's boot animation appears smoothly as it should.
If you have a similar dual-boot setup and are used to selecting OS directly from BIOS, this configuration feels much cleaner. Boot feels faster too since there's no menu pause in the middle.
Did you get different results with your setup? Let me know in the comments — there might be hardware variations or Ubuntu versions that need different adjustments.
References
Topics
Topics in this note
Explore related ideas through the topics connected to this note.
Share this article
Discussion
Preparing the comments area...