How to Fix a Full /boot Partition on Linux

If your Linux /boot partition is full, Kudu can help clean related leftovers and recover space.

By Kudu Team

Fix this automatically with Kudu

Run a free system scan to detect and resolve this issue automatically — no manual steps required.

Download Kudu Free →

What Causes This?

A full /boot partition usually happens because old Linux kernel files were never removed after updates. Many Linux installs keep several previous kernels for safety, but on systems with a small dedicated /boot partition, those files can pile up fast. It can also happen if failed updates leave behind partial kernel packages or old initramfs images.

Common Symptoms

  • Linux updates fail with errors about not enough space on /boot
  • You see messages mentioning vmlinuz, initrd, or initramfs
  • The system can install packages normally except for kernel-related updates
  • Bootloader or grub updates fail during package installation
  • Disk usage tools show /boot at or near 100% full

How to Fix It Manually

  1. Boot into Linux and check /boot usage

    • Open a Terminal window.
    • Run:
      df -h /boot
    • If usage is close to 100%, list installed kernels:
      dpkg --list | grep linux-image
      On Fedora, RHEL, or similar systems, use:
      rpm -qa | grep kernel
  2. Find the kernel you are currently using

    • In Terminal, run:
      uname -r
    • Do not remove the kernel version shown here. Keep at least one older working kernel as a backup too.
  3. Remove old kernels on Debian or Ubuntu

    • List kernel packages again and identify versions older than your current one.
    • Remove unused kernels with:
      sudo apt remove --purge linux-image-VERSION linux-headers-VERSION
      Replace VERSION with the old kernel version you want to remove.
    • After that, run:
      sudo apt autoremove --purge
  4. Remove old kernels on Fedora, RHEL, or CentOS

    • Use this command to keep the newest kernels and remove older ones:
      sudo dnf remove $(dnf repoquery --installonly --latest-limit=-2 -q)
    • If your system uses yum, you may need:
      sudo package-cleanup --oldkernels --count=2
    • Always confirm the current kernel from uname -r is not being removed.
  5. Clean leftover boot files if needed

    • Check what is inside /boot:
      ls -lh /boot
    • If you see files for kernels that are no longer installed, rebuild package metadata and initramfs:
      sudo update-initramfs -u
      sudo update-grub
      On Fedora-based systems, use:
      sudo grub2-mkconfig -o /boot/grub2/grub.cfg
  6. Verify free space and reboot

    • Check space again:
      df -h /boot
    • If enough space has been recovered, reboot the system:
      sudo reboot
    • After rebooting, run pending updates again to confirm the issue is fixed.
  7. If Linux is inside WSL on a Windows PC

    • Open Windows Terminal or PowerShell from Start.
    • Run:
      wsl
    • Then follow the same Linux cleanup steps above inside the WSL terminal.
    • If you are troubleshooting from Windows because disk space is generally low, also clear temporary files and uninstall apps you no longer need.

Fix It Automatically with Kudu

If this problem is tied to broader disk space issues on a Windows PC, Kudu can help by finding junk files, installer leftovers, caches, and other unnecessary data that make cleanup harder. It gives you a faster way to recover space and reduce the chance of update-related problems when you use Linux alongside Windows or WSL.

Download Kudu Free →

Fix this automatically with Kudu

Run a free system scan to detect and resolve this issue automatically — no manual steps required.

Download Kudu Free →