温馨提示×

怎样清理ubuntu旧内核

小樊
42
2026-09-14 19:30:38
栏目: 智能运维

在 Ubuntu 中,随着系统更新,会保留多个旧内核版本,占用 /boot 空间,可能导致 /boot 分区满。下面是安全清理旧内核的常用方法。


一、查看当前正在使用的内核(⚠️不要删这个)

uname -r

输出示例:

5.15.0-91-generic

二、查看已安装的内核

dpkg --list | grep linux-image

或:

ls /boot | grep vmlinuz

三、推荐方式(最安全):使用 apt 自动清理

1️⃣ 自动移除无用内核(推荐)

sudo apt autoremove --purge

✅ 会保留 当前内核 + 一个备用内核


2️⃣ 若 /boot 已满,先清理旧内核

sudo apt-get purge $(dpkg -l | grep 'linux-image' | grep -v "$(uname -r)" | awk '{print $2}' | head -n -1)

⚠️ 此命令会保留当前内核和一个旧内核


四、手动删除指定旧内核(进阶)

1️⃣ 查看内核包名

dpkg -l | grep linux-image

2️⃣ 删除指定内核(示例)

sudo apt purge linux-image-5.15.0-67-generic linux-headers-5.15.0-67-generic

五、清理相关残留

sudo apt autoremove --purge
sudo apt clean

六、UEFI / GRUB 修复(可选)

如果删除后启动异常:

sudo update-grub
sudo grub-install /dev/sda

七、建议保留策略 ✅

  • ✅ 当前内核
  • ✅ 上一个稳定内核(防止更新失败)
  • ❌ 更早的都可以删

八、常见错误

❌ 删除 uname -r 对应的内核
❌ 手动 rm /boot 文件(不安全)
❌ 删除 linux-image-generic(元包)


如果你愿意,可以贴出:

uname -r
df -h /boot
dpkg -l | grep linux-image

我可以帮你精确给出要删除的内核列表

0