在Ubuntu系统下删除无用的Linux内核的方法

2025-05-27 0 71

查找无用的镜像

使用Ubuntu一段时间后,就会发觉由于自动升级,系统里安装了很多内核。始终用不到的旧内核有必要清理一下,以节省启动时间和硬盘空间。

首先可查看当前用的内核是哪个,可通过命令:uname -a 来获得信息。例如我台式机上显示为:

复制代码
代码如下:


magc@magc-desktop:~$ uname -a


Linux magc-desktop 2.6.24-19-rt #1 SMP PREEMPT RT Thu Aug 21 02:08:03 UTC 2008 i686 GNU/Linux

然后通过查看本机上所有内核的列表来决定哪些需要删除掉:

运行命令:

复制代码
代码如下:

dpkg –get-selections|grep linux
例如我本机显示为:


复制代码
代码如下:


magc@magc-desktop:~$ dpkg –get-selections|grep linux


libselinux1 install

linux-generic install

linux-headers-2.6.24-19 install

linux-headers-2.6.24-19-generic install

linux-headers-2.6.24-19-rt install

linux-headers-2.6.24-21 install

linux-headers-2.6.24-21-generic install

linux-headers-2.6.24-21-rt install

linux-headers-generic install

linux-headers-rt install

linux-image-2.6.24-19-generic deinstall

linux-image-2.6.24-19-rt install

linux-image-2.6.24-21-generic install

linux-image-generic install

linux-image-rt install

linux-restricted-modules-2.6.24-19-generic deinstall

linux-restricted-modules-2.6.24-19-rt install

linux-restricted-modules-2.6.24-21-generic install

linux-restricted-modules-common install

linux-restricted-modules-generic install

linux-restricted-modules-rt install

linux-rt install

linux-sound-base install

linux-ubuntu-modules-2.6.24-19-generic deinstall

linux-ubuntu-modules-2.6.24-19-rt install

linux-ubuntu-modules-2.6.24-21-generic install

util-linux install

util-linux-locales install

其中带有image的就是内核文件,因此可看出我的机器上共五个内核版本。我当前使用的是2.6.24-19-rt,所以决定将其它没用的内核删除。

如何清理旧内核镜像
在删除旧内核之前,记住最好留有2个最近的内核(最新的和上一个版本),以防主要的版本出错。现在就让我们看看如何在Ubuntu上清理旧内核。

Ubuntu内核镜像包含了以下的包。

linux-image-: 内核镜像
linux-image-extra-: 额外的内核模块
linux-headers-: 内核头文件
首先检查系统中安装的内核镜像。

复制代码
代码如下:


$ dpkg –list | grep linux-image
$ dpkg –list | grep linux-headers


在列出的内核镜像中,你可以移除一个特定的版本(比如3.19.0-15)。


复制代码
代码如下:


$ sudo apt-get purge linux-image-3.19.0-15
$ sudo apt-get purge linux-headers-3.19.0-15


上面的命令会删除内核镜像和它相关联的内核模块和头文件。

注意如果你还没有升级内核那么删除旧内核会自动触发安装新内核。这样在删除旧内核之后,GRUB配置会自动升级来移除GRUB菜单中相关GRUB入口。

如果你有很多没用的内核,你可以用shell表达式来一次性地删除多个内核。注意这个括号表达式只在bash或者兼容的shell中才有效。

复制代码
代码如下:


$ sudo apt-get purge linux-image-3.19.0-{18,20,21,25}
$ sudo apt-get purge linux-headers-3.19.0-{18,20,21,25}


面的命令会删除4个内核镜像:3.19.0-18、3.19.0-20、3.19.0-21 和 3.19.0-25。

如果GRUB配置由于任何原因在删除旧内核后没有正确升级,你可以尝试手动用update-grub2命令来更新配置。

复制代码
代码如下:


$ sudo update-grub2


现在就重启来验证GRUB菜单是否已经正确清理了。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 建站教程 在Ubuntu系统下删除无用的Linux内核的方法 https://www.kuaiidc.com/61280.html

相关文章

发表评论
暂无评论