Ubuntu26.04 更新内核并批量清理旧内核释放空间

本文完整讲解 Ubuntu 26.04 两种内核升级方案:官方源稳定内核、mainline 主线最新内核,附带 3 种安全清理多余内核方法,自动 / 手动 / 批量脚本,解决 /boot 磁盘占用过高、引导菜单内核过多问题,全程命令可直接复制执行。

个人建议,新手一般不要太专注这个内核升级,除非重大版本更新对系统或者安全影响严重的。因为新版本可能也是吃螃蟹的人,个人PC不折腾就要稳定好了。当然喜欢追求功能,还可以参考下文操作。

本文基于 Ubuntu 26.04(Resolute Raccoon)实测,提供稳定官方内核升级mainline Kernel主线最新内核安装两套方案,搭配 3 种安全清理旧内核方式,新手也能零失误操作,全程复制终端命令即可。

一、先查看当前内核信息

操作前先确认正在运行的内核,绝对不能删除当前正在使用的内核

  1. 查看当前启动内核
uname -r
  1. 列出系统全部已安装内核
linux-headers 列表详情
dpkg --list | grep -E 'linux-image|linux-headers' | sort -V

这条命令的功能是:

  1. 列出系统中所有内核镜像(linux-image)和内核头文件(linux-headers)
  2. 版本号从小到大自动排序(sort -V),旧版本在上,新版本在下
  3. 方便你一眼看清:装了哪些内核、哪些是旧的、哪些可以删

包名

  • linux-image-xxx:内核镜像本体,占 /boot 空间
  • linux-headers-xxx:内核头文件,编译驱动时用
  • linux-headers-xxx-generic:对应通用版内核的头文件

二、两种内核升级方案(按需选择)

方案 1:官方源稳定内核(推荐日常办公 / 生产机)

优势:系统官方维护、持续安全补丁、NVIDIA / 各类驱动完美兼容、无兼容翻车风险。

  1. 更新软件源缓存
sudo apt update
  1. 完整升级系统(同步更新官方稳定内核)
ubuntu使用 full-upgrade 会自动更新内核
sudo apt full-upgrade -y
  1. 重启进入新内核
sudo reboot

重启后再次执行uname -r,确认内核版本已更新。

方案 2:Mainline 主线最新内核(新硬件、追求新特性专用)

官方仓库内核迭代慢,新 CPU、独显、无线网卡、USB 设备兼容差,用mainline工具一键安装上游最新稳定内核(Linux 官方主线)。

1. 安装 mainline 内核管理工具

# 添加工具PPA
sudo add-apt-repository ppa:cappelikan/ppa -y
sudo apt update
# 安装mainline
sudo apt install mainline -y

2. 查看可安装的所有主线内核

mainline list
mainline list查看可升级的内核版列表

3. 一键安装指定版本(示例安装7.0.1)

mainline install 7.0.1

工具自动下载 4 组 deb 包:内核头文件、通用头文件、内核镜像、驱动模块,自动配置 GRUB 引导。

4. 重启切换新内核

sudo reboot

重要注意事项

  1. Mainline 主线内核无 Ubuntu 官方安全维护,台式机 NVIDIA 独显可能出现驱动不兼容;
  2. 开启 Secure Boot 安全启动时,主线内核无法正常引导,需在 BIOS 关闭 Secure Boot;
  3. 生产服务器不建议使用主线内核,优先方案 1 官方稳定内核。

三、3 种安全清理多余旧内核(按新手友好度排序)

核心原则:清理后至少保留当前内核 + 上一个稳定内核,新内核故障可在 GRUB 菜单回滚旧版本。

方法 1:自动一键清理(新手首选,最安全)

APT 自动识别未被依赖的废弃内核,自动删除镜像、头文件、模块及配置,不会误删正在运行的内核。

# --purge 同步删除配置文件,彻底释放空间
sudo apt autoremove --purge -y
# 更新引导菜单,移除已删除内核条目
sudo update-grub

可选:先模拟预览会删除哪些包,确认无误再执行清理(–dry-run并不会删除,仅模拟)

sudo apt autoremove --purge --dry-run

方法 2:手动精准删除指定内核(精细化控制)

适合只想删除某几个老旧版本,保留多个历史内核备用

  1. 先查看所有内核版本
dpkg --list | grep linux-image
  1. 批量删除指定版本(示例删除 6.8.0-xx 全部内核组件)
sudo apt purge linux-image-6.8.0-* linux-headers-6.8.0-* linux-modules-6.8.0-* -y
  1. 更新 GRUB 引导
sudo update-grub

方法 3:批量清理脚本(一键清空除当前外所有内核)

适合 /boot 严重爆满、需要一次性清理大量旧内核场景,脚本自动排除当前运行内核,无误删风险。

  1. 创建清理脚本
cat << 'EOF' > kernel_clean.sh
#!/bin/bash
# 获取当前正在使用的内核
current_kernel=$(uname -r)
# 批量卸载所有非当前内核镜像、头文件、模块
sudo apt purge $(dpkg --list | grep -E 'linux-image|linux-headers|linux-modules' | awk '{print $2}' | grep -v "$current_kernel" | grep -v generic) -y
# 清理无用依赖与残留配置
sudo apt autoremove --purge -y
# 更新引导菜单
sudo update-grub
echo "内核清理完成,剩余内核:"
dpkg --list | grep linux-image
EOF
  1. 赋予执行权限并运行
chmod +x kernel_clean.sh
sudo ./kernel_clean.sh

四、进阶:清理系统残留孤立配置

长期操作 apt 会残留大量已卸载软件的配置文件,执行以下命令一键清空:

sudo dpkg --purge $(dpkg -l | awk '/^rc/ {print $2}')

五、操作完成验证步骤

  1. 检查剩余内核,确认保留当前 + 至少 1 个备用内核
dpkg --list | grep linux-image
linux-image  列表信息

ii = 已安装、正常可用 rc = 已删除,但配置文件残留

  1. 查看 /boot 分区空间释放效果

如果分区时配置了/boot分区大小,那多个版本就会导致空间缩小甚至报异常。

df -h /boot
  1. 查看 GRUB 引导内核列表
grep menuentry /boot/grub/grub.cfg
ubuntu查看系统内核列表

六、常见踩坑避坑总结

  1. 禁止删除uname -r输出的当前内核,会直接无法开机;
  2. mainline 主线内核与闭源显卡驱动容易冲突,升级前建议卸载 NVIDIA 驱动;
  3. Secure Boot 开启状态下主线内核引导失败,进 BIOS 关闭安全启动即可;
  4. 清理内核后必须执行sudo update-grub,否则引导菜单仍显示已删除内核;
  5. /boot 分区爆满导致 apt 操作失败时,先用脚本批量清理,再执行系统更新。

日常办公主机直接使用sudo apt full-upgrade更新官方稳定内核,搭配autoremove自动清理;新款硬件、外设兼容不足时,用 mainline 工具安装上游最新主线内核。定期清理冗余内核既能释放磁盘空间,也能简化 GRUB 引导菜单,降低系统启动故障概率,建议每 2 个月执行一次内核清理操作。

本文首发于 58Linux技术博客,专注Ubuntu桌面使用、Linux服务器运维与网站搭建实战。

发表评论

粤ICP备10052831号 | © 2026 58Linux 技术笔记. All Rights Reserved. | 联系我们 | 关于本站
本站内容开放共享,仅供学习交流 | 专注 Ubuntu & Linux 实战教程
Built with GeneratePress