ubuntu

Ubuntu系统中如何删除旧内核

小樊
59
2025-09-19 22:29:42
栏目: 智能运维

Ubuntu系统删除旧内核的安全操作流程

1. 查看当前正在使用的内核版本

在终端执行以下命令,获取系统当前运行的内核版本(务必保留此版本,禁止删除):

uname -r

示例输出:5.15.0-82-generic(此版本为当前系统内核,不可删除)。

2. 列出所有已安装的内核包

使用以下命令查看系统中已安装的所有内核相关包(包括内核主体、头文件、模块等):

dpkg --list | grep -E 'linux-image|linux-headers|linux-modules'

或更简洁的过滤方式:

dpkg list | grep E 'linux-image|linux-headers|linux-modules'

输出示例:

ii linux-image-5.15.0-78-generic 5.15.0-78.85~20.04.1 amd64 Signed kernel image generic  
ii linux-image-5.15.0-82-generic 5.15.0-82.91~20.04.1 amd64 Signed kernel image generic  
ii linux-headers-5.15.0-82-generic 5.15.0-82.91~20.04.1 amd64 Linux kernel headers for version 5.15.0 on 64 bit x86 SMP  

记录需要保留的版本(当前运行的内核+1-2个备用版本),其余为可删除的旧内核。

3. 安全删除旧内核(推荐方法)

方法1:使用apt autoremove --purge自动清理

Ubuntu默认配置会保留最新2个内核版本,执行以下命令可自动卸载所有未使用的旧内核及其关联包(如头文件、模块),并彻底删除配置文件:

sudo apt autoremove --purge

此方法为最安全、最便捷的选择,适合大多数用户。

方法2:手动指定删除特定版本

若需精确控制保留的版本数量,可手动删除旧内核。例如,删除5.15.0-78-generic内核及相关组件:

sudo apt purge linux-image-5.15.0-78-generic linux-headers-5.15.0-78* linux-modules-5.15.0-78*

注意:替换命令中的版本号为实际要删除的旧内核版本,不要包含当前运行的内核

4. 更新GRUB引导菜单

删除旧内核后,需更新GRUB以移除无效的启动项,确保系统启动时仅显示当前及保留的内核:

sudo update-grub

可通过以下命令验证GRUB菜单是否已更新(仅显示当前及保留的内核):

grep 'menuentry' /boot/grub/grub.cfg

5. 清理残留配置文件(可选但推荐)

若卸载后仍存在残留的配置文件,可使用以下命令彻底清理:

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

此命令会删除所有标记为“rc”(残留配置)的内核相关包。

6. 预防旧内核再次累积(可选)

为避免旧内核频繁堆积,可调整APT配置:

注意事项

0
看了该问题的人还看了