所以...

所以...

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

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

1. 分区信息(如果有帮助)

# 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. 对该决定的简要解释(为什么?)会有所帮助。

答案1

摘自以下内容网站

## 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

答案2

我会删除所有版本,只留下最近的两个。当然,你需要现在正在运行的版本,但我认为保留一个之前的版本以防当前版本出现稳定性问题。如果是这种情况,你就可以快速返回一些版本。

rpm -ev kernel-2.6.32-358

如果你对当前局势的稳定性有信心,并且真的想要那个空间回来,删除第二个最新的空间

rpm -ev kernel-2.6.32-358.11.1

相关内容