首页 > 系统服务 > 详细

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

时间:2015-12-10 18:30:33      阅读:129      评论:0      收藏:0      [点我收藏+]

查找无用的镜像

使用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菜单是否已经正确清理了。

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

原文:http://www.jb51.net/os/Ubuntu/382899.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!