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, orinitramfs - The system can install packages normally except for kernel-related updates
- Bootloader or
grubupdates fail during package installation - Disk usage tools show
/bootat or near 100% full
How to Fix It Manually
-
Boot into Linux and check
/bootusage- Open a Terminal window.
- Run:
df -h /boot - If usage is close to 100%, list installed kernels:
On Fedora, RHEL, or similar systems, use:dpkg --list | grep linux-imagerpm -qa | grep kernel
-
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.
- In Terminal, run:
-
Remove old kernels on Debian or Ubuntu
- List kernel packages again and identify versions older than your current one.
- Remove unused kernels with:
Replacesudo apt remove --purge linux-image-VERSION linux-headers-VERSIONVERSIONwith the old kernel version you want to remove. - After that, run:
sudo apt autoremove --purge
-
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 -ris not being removed.
- Use this command to keep the newest kernels and remove older ones:
-
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:
On Fedora-based systems, use:sudo update-initramfs -u sudo update-grubsudo grub2-mkconfig -o /boot/grub2/grub.cfg
- Check what is inside
-
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.
- Check space again:
-
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.
Fix this automatically with Kudu
Run a free system scan to detect and resolve this issue automatically — no manual steps required.
Download Kudu Free →Related guides
How to Fix a Full Root Partition on Linux
If your Linux root partition is full, Kudu can help clean logs, caches, and leftover files safely.
How to Fix Slow Boot on Linux
Speed up Linux boot time by cleaning clutter and reducing unnecessary startup load with Kudu.
How to Remove App Cache on Linux
Clean application cache on Linux to recover space and reduce clutter using Kudu.
How to Fix Apps Opening Slowly on Linux
If Linux apps take too long to open, Kudu can help clean caches and reduce system clutter.