How to Fix Ubuntu That Won't Boot After a Kernel Update
Recover an unbootable Ubuntu by booting an older kernel from GRUB, then repairing packages or reinstalling GRUB from a live USB.

A kernel update finishes, you reboot, and Ubuntu drops you to a black screen, a BusyBox (initramfs) prompt, or a frozen splash. It is unsettling, but a failed kernel update rarely destroys anything. Ubuntu keeps the previous kernel installed precisely for this situation, and you can almost always boot it, fix the broken package, and move on. Here is the recovery path from easiest to most thorough.
Quick answer
The fastest fix is to boot the previous kernel: hold Shift (BIOS) or tap Esc (UEFI) at startup to reveal GRUB, choose Advanced options for Ubuntu, and pick the older kernel (the normal entry, not recovery mode). Once it boots, run sudo dpkg --configure -a and sudo apt --fix-broken install, then re-run the upgrade and sudo update-grub. If no kernel boots or you land in BusyBox, boot an Ubuntu live USB, chroot in, and run grub-install /dev/sda plus update-grub, or just use the Boot-Repair tool. Your personal files are never touched by any of this.
Key takeaways
- Ubuntu keeps the previous kernel in the GRUB menu. Booting it is the fastest recovery.
- Hold Shift (BIOS) or tap Esc (UEFI) during boot to reveal the GRUB menu if it is hidden.
- From a working older kernel,
sudo dpkg --configure -aandsudo apt --fix-broken installrepair most failed updates. - If GRUB itself is broken, boot a live USB, chroot in, and run
grub-installplusupdate-grub. - The Boot-Repair tool automates GRUB reinstallation when manual commands feel risky.
Match the failure to the fix
What you see on screen tells you how deep the problem goes and which step to start with:
| What you see | Likely cause | Where to start |
|---|---|---|
| Boots to old kernel fine, new one fails | Half-installed kernel package | Step 2: repair packages |
| GRUB menu missing or wrong kernels listed | Bootloader config out of date | Step 3: update-grub |
| No kernel boots, blank/black screen | GRUB or kernel install broken | Step 4: reinstall GRUB from live USB |
BusyBox (initramfs) prompt | Root filesystem not found/mounted | Run fsck, or Step 4 |
| Frozen Ubuntu splash logo | Driver or initramfs issue | Boot old kernel, then Step 2 |
Step 1: Boot the previous kernel from GRUB
Ubuntu installs a new kernel alongside the old one, so the old, working kernel is still there.
- Reboot. As the machine powers on, hold Shift on a BIOS system, or tap Esc repeatedly on a UEFI system, to bring up the GRUB menu.
- Select Advanced options for Ubuntu.
- Choose the previous kernel version in the list, the normal entry, not its recovery mode.
- Press Enter and let it boot.
If the system boots, you are now in a working environment and can repair the broken update from there.
Note
Pick the normal entry for the older kernel, not "(recovery mode)". Recovery mode boots single-user with limited services and can confuse the repair steps. You only need recovery mode if the normal entry also fails.
Step 2: Repair the broken packages
Once booted on the older kernel, fix whatever the update left half-installed.
sudo dpkg --configure -a
sudo apt --fix-broken install
sudo apt update
sudo apt full-upgrade
The first command finishes any packages that were interrupted mid-configuration. The second resolves broken dependencies. Then re-running the upgrade often completes the kernel install cleanly the second time. Reboot and let GRUB pick the newest kernel.
Step 3: Regenerate GRUB if the menu is wrong
If GRUB does not list the new kernel, or points at the wrong disk, rebuild its configuration from the working session:
sudo update-grub
This rescans installed kernels and rewrites the boot menu. If a manual edit to grub.cfg caused the problem, note that update-grub overwrites it, which is what you want.

Step 4: Reinstall GRUB from a live USB
If no kernel boots at all, or you land in BusyBox, GRUB itself likely needs reinstalling. Do this from an Ubuntu live USB.
- Boot the Ubuntu installer USB and choose Try Ubuntu.
- Open a terminal and identify your root partition with
lsblk(for example/dev/sda2). - Mount it and bind the system directories:
- Enter the system and reinstall GRUB:
- Reboot and remove the USB.
sudo mount /dev/sda2 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
# UEFI systems also need the EFI partition:
sudo mount /dev/sda1 /mnt/boot/efi
sudo chroot /mnt
grub-install /dev/sda
update-grub
exit
Note
Use the whole disk for grub-install (/dev/sda), not a partition (/dev/sda2). Pointing it at a partition is a common mistake that leaves the system still unbootable.
The easy-button alternative: Boot-Repair
If manual chroot commands feel risky, the Boot-Repair tool does it for you. From the live USB, add its PPA, install boot-repair, launch it, and click Recommended repair. It analyzes the disk, reinstalls the bootloader to the correct location, and regenerates the menu automatically. It is the safest route for anyone not comfortable at the command line. The commands to set it up from a Try Ubuntu session:
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt update
sudo apt install -y boot-repair
boot-repair
What to do right now
If you are staring at a failed boot, work in this order and stop as soon as you are back in:
- Reboot and hold Shift (BIOS) or tap Esc (UEFI) to bring up GRUB.
- Open Advanced options for Ubuntu and boot the previous kernel (normal entry, not recovery).
- Once in, run
sudo dpkg --configure -athensudo apt --fix-broken install. - Re-run
sudo apt update && sudo apt full-upgrade, thensudo update-grub, and reboot. - If no kernel boots, boot a live USB, chroot in, and run
grub-install /dev/sdaplusupdate-grub. - Not comfortable in the terminal? Run Boot-Repair and click Recommended repair.
- After recovery, keep at least one known-good older kernel and snapshot before the next big upgrade.
Frequently asked questions
Will I lose my files recovering from a failed kernel update?
No. The kernel and bootloader live separately from your home directory. Booting an older kernel or reinstalling GRUB does not touch your personal data. The repair steps act on system packages and the boot configuration, not your documents.
Why does Ubuntu keep so many old kernels?
As a safety net exactly like this. When an update breaks booting, the previous kernel is your way back in. You can remove very old ones later with sudo apt autoremove --purge, but always keep at least one known-good previous kernel installed.
I get a BusyBox (initramfs) prompt. What does that mean?
The initial ramdisk could not find or mount your root filesystem. From that prompt, run fsck on the root partition (for example fsck /dev/sda2 -y), then type exit to continue booting. If that fails, recover via the live-USB chroot method above.
Why must I run grub-install on the disk, not the partition?
GRUB's boot code lives in the disk's boot sector (or the EFI partition), not inside a data partition. Pointing grub-install at /dev/sda2 instead of /dev/sda is the single most common chroot mistake and leaves the machine still unbootable. Use the whole disk.
How do I avoid this next time?
Keep the previous kernel installed, and consider taking a system snapshot (Timeshift, or a Btrfs/ZFS snapshot) before major upgrades. The same backup discipline in our 3-2-1-1-0 backup guide applies to Linux desktops too, and if you are new to running Linux beside Windows, our dual-boot setup guide covers the partition habits that keep recovery simple.
Sources & further reading
- oneuptime.com/blog/post/2026-03-02-how-to-reset-the-grub-bootloader-on-ubuntu/view
- mundobytes.com/en/How-to-fix-a-boot-failure-in-Linux-after-updating-the-kernel/
- progressiverobot.com/2026/05/22/ubuntu-24-04-lts-grub-update-fails-after-kernel-changes-fix-prevention/
- discourse.ubuntu.com/t/wont-boot-after-update/77368
- help.ubuntu.com/community/Boot-Repair


