如何删除CentOS 6上的旧内核(释放启动分区)?

如何确定要删除哪些内核以释放/boot分区上的某些空间。

这是一个场景(一些背景信息)。

1. Parititon信息(如有帮助)

 # df -h Filesystem Size Used Avail Use% Mounted on ... /dev/sda1 99M 81M 14M 86% /boot ... 

2.当前内核版本

 # uname -a Linux serv.example.com 2.6.32-358.23.2.el6.x86_64 #1 SMP Wed Oct 16 18:37:12 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux 

3.安装了所有内核版本

 # rpm -qa | grep kernel abrt-addon-kerneloops-2.0.8-21.el6.centos.x86_64 kernel-firmware-2.6.32-431.1.2.0.1.el6.noarch libreport-plugin-kerneloops-2.0.9-19.el6.centos.x86_64 kernel-headers-2.6.32-431.1.2.0.1.el6.x86_64 kernel-2.6.32-358.11.1.el6.x86_64 kernel-2.6.32-358.el6.x86_64 kernel-2.6.32-358.23.2.el6.x86_64 dracut-kernel-004-336.el6_5.2.noarch 

所以…

  1. 哪个内核版本可以从上面的列表中删除?
  2. 怎么样?
  3. 这个决定的简短解释(为什么?)会有帮助。

采取从以下网站

 ## Install yum utils ## yum install yum-utils ## Package-cleanup set count as how many old kernels you want left ## package-cleanup --oldkernels --count=2 

这将删除所有旧的内核,只保留最新的两个内核在centos 6.4上,这可能是你想要的,因为最近的内核包含错误修复,如果新内核启动失败,你总是可以故障切换到旧的内核。 上面的命令意味着你不必去说rpm -e xyz其中xyz是你的特定内核,因为它会自动保持最新的内核。

你跑的命令

 rpm -qa | grep kernel 

实际上并没有告诉你什么内核在启动分区上使用空间。 dracut-kernel实际上并没有在你的系统上安装一个内核。 你可以查询rpm来确认。

 [root@localhost]: rpm -ql dracut-kernel /usr/share/doc/dracut-kernel-004 /usr/share/doc/dracut-kernel-004/README.kernel 

除了最近的两个,我会删除所有的。 当然,你需要现在正在运行的那个,但是我认为值得保留前一个,以防当前存在一些稳定性问题。 如果是这样的话,你就有事情要回去。

 rpm -ev kernel-2.6.32-358 

如果你对现在的稳定性充满信心,而且你真的想要这个空间,那就去掉第二个新的空间

 rpm -ev kernel-2.6.32-358.11.1