从Redhat启动分区卸载旧的内核

接过一个较旧的系统,发现/boot分区已满90%。

在网上search一下之后,我发现安装了较旧的内核,占用了磁盘空间。

rpm -qa | grep ^kernel | sort rpm -qa | grep ^kernel | sort rpm -qa | grep ^kernel | sort显示:

 kernel-2.6.9-67.0.15.EL kernel-2.6.9-67.0.20.EL kernel-2.6.9-67.0.22.EL kernel-2.6.9-67.EL kernel-2.6.9-78.0.13.EL kernel-2.6.9-78.0.17.EL kernel-2.6.9-78.0.1.EL kernel-2.6.9-78.0.22.EL kernel-2.6.9-78.0.5.EL kernel-2.6.9-78.0.8.EL kernel-2.6.9-89.0.11.EL kernel-2.6.9-89.0.9.EL kernel-2.6.9-89.31.1.EL kernel-2.6.9-89.33.1.EL kernel-2.6.9-89.35.1.EL kernel-devel-2.6.9-67.0.15.EL kernel-devel-2.6.9-67.0.20.EL kernel-devel-2.6.9-67.0.22.EL kernel-devel-2.6.9-67.EL kernel-devel-2.6.9-78.0.13.EL kernel-devel-2.6.9-78.0.17.EL kernel-devel-2.6.9-78.0.1.EL kernel-devel-2.6.9-78.0.22.EL kernel-devel-2.6.9-78.0.5.EL kernel-devel-2.6.9-78.0.8.EL kernel-devel-2.6.9-89.0.11.EL kernel-devel-2.6.9-89.0.7.EL kernel-devel-2.6.9-89.0.9.EL kernel-devel-2.6.9-89.31.1.EL kernel-devel-2.6.9-89.33.1.EL kernel-devel-2.6.9-89.35.1.EL kernel-hugemem-devel-2.6.9-67.0.15.EL kernel-hugemem-devel-2.6.9-67.0.20.EL kernel-hugemem-devel-2.6.9-67.0.22.EL kernel-hugemem-devel-2.6.9-67.EL kernel-hugemem-devel-2.6.9-78.0.13.EL kernel-hugemem-devel-2.6.9-78.0.17.EL kernel-hugemem-devel-2.6.9-78.0.1.EL kernel-hugemem-devel-2.6.9-78.0.22.EL kernel-hugemem-devel-2.6.9-78.0.5.EL kernel-hugemem-devel-2.6.9-78.0.8.EL kernel-hugemem-devel-2.6.9-89.0.11.EL kernel-hugemem-devel-2.6.9-89.0.7.EL kernel-hugemem-devel-2.6.9-89.0.9.EL kernel-hugemem-devel-2.6.9-89.31.1.EL kernel-hugemem-devel-2.6.9-89.33.1.EL kernel-hugemem-devel-2.6.9-89.35.1.EL kernel-smp-2.6.9-67.0.15.EL kernel-smp-2.6.9-67.0.20.EL kernel-smp-2.6.9-67.0.22.EL kernel-smp-2.6.9-67.EL kernel-smp-2.6.9-78.0.13.EL kernel-smp-2.6.9-78.0.17.EL kernel-smp-2.6.9-78.0.1.EL kernel-smp-2.6.9-78.0.22.EL kernel-smp-2.6.9-78.0.5.EL kernel-smp-2.6.9-78.0.8.EL kernel-smp-2.6.9-89.0.11.EL kernel-smp-2.6.9-89.0.9.EL kernel-smp-2.6.9-89.31.1.EL kernel-smp-2.6.9-89.33.1.EL kernel-smp-2.6.9-89.35.1.EL kernel-smp-devel-2.6.9-67.0.15.EL kernel-smp-devel-2.6.9-67.0.20.EL kernel-smp-devel-2.6.9-67.0.22.EL kernel-smp-devel-2.6.9-67.EL kernel-smp-devel-2.6.9-78.0.13.EL kernel-smp-devel-2.6.9-78.0.17.EL kernel-smp-devel-2.6.9-78.0.1.EL kernel-smp-devel-2.6.9-78.0.22.EL kernel-smp-devel-2.6.9-78.0.5.EL kernel-smp-devel-2.6.9-78.0.8.EL kernel-smp-devel-2.6.9-89.0.11.EL kernel-smp-devel-2.6.9-89.0.7.EL kernel-smp-devel-2.6.9-89.0.9.EL kernel-smp-devel-2.6.9-89.31.1.EL kernel-smp-devel-2.6.9-89.33.1.EL kernel-smp-devel-2.6.9-89.35.1.EL kernel-utils-2.4-20.el4 

这似乎是一个共识,我删除/卸载旧的内核,但作为非系统pipe理员我不太清楚如何做到这一点。 我怎么知道哪些卸载,我使用rpm来做到这一点?

uname -a显示:

Linux 2.6.9-89.0.11.ELsmp #1 SMP Tue Sep 15 07:16:37 EDT 2009 i686 i686 i386 GNU/Linux

可能最安全的做法是使用yum erase <package>-<version> 。 基本上,你在那里有什么,但没有必要包括.EL 。 如果由于某些原因,yum不可用,则可以使用rpm -e

你要非常小心,不要删除当前正在运行的内核。 我注意到,也有开发包。 听起来这些对你来说可能是完全不必要的,但是我会先从删除最旧的版本开始,直到你对释放的空间感到满意为止。

Yum应该照顾它,但也要确认引导条目是从/etc/grub.conf中删除的。

我这个星期遇到了这个。 我发现一个启用了yum自动更新的系统。 多年来,多个内核更新被应用并且最终被填充/引导。 用uname -a注意你的内核版本。 运行rpm -qa | grep kernel rpm -qa | grep kernel列出安装的各种内核软件包。 对要删除的版本/软件包执行yum erase擦除。

 [root@xxxx ~]# rpm -qa | grep kernel kernel-devel-2.6.9-42.0.8.plus.c4 kernel-smp-2.6.9-42.0.10.EL kernel-devel-2.6.9-67.0.15.plus.c4 kernel-smp-2.6.9-67.0.20.plus.c4 kernel-devel-2.6.9-89.0.28.plus.c4 kernel-module-xfs-2.6.9-42.0.3.plus.c4smp-0.2-1 kernel-smp-2.6.9-55.plus.c4 kernel-devel-2.6.9-55.0.2.EL kernel-devel-2.6.9-55.0.2.plus.c4 kernel-smp-2.6.9-55.0.9.plus.c4 kernel-smp-2.6.9-55.0.12.EL kernel-smp-2.6.9-67.0.1.EL kernel-devel-2.6.9-67.0.1.EL.plus.c4 kernel-smp-2.6.9-67.0.4.plus.c4 kernel-smp-2.6.9-67.0.7.plus.c4 kernel-devel-2.6.9-67.0.22.plus.c4 kernel-devel-2.6.9-42.0.10.plus.c4 kernel-devel-2.6.9-67.plus.c4 kernel-smp-2.6.9-78.0.13.plus.c4 kernel-smp-2.6.9-89.0.25.plus.c4 kernel-hugemem-devel-2.6.9-89.0.28.plus.c4 kernel-smp-2.6.9-42.0.3.EL kernel-smp-2.6.9-42.0.3.plus.c4 kernel-smp-2.6.9-42.0.8.EL kernel-devel-2.6.9-42.0.10.EL 

擦除几个版本…

yum erase kernel-devel-2.6.9-67.0.4.plus.c4 kernel-devel-2.6.9-67.0.1.EL