在下面/启动我们有以下文件(red-hat Linux 版本 6.6)
cd /boot
# ls -ltr
drwx------ 2 root root 12288 Oct 15 2015 lost+found
-rwxr-xr-x 1 root root 4152624 Oct 15 2015 vmlinuz-2.6.32-504.30.3.el6.x86_64
-rw------- 1 root root 6084011 Oct 15 2015 initrd-2.6.32- 504.30.3.el6.x86_64kdump.img
drwxr-xr-x 3 root root 1024 Oct 15 2015 efi
-rw-r--r-- 1 root root 106371 Oct 15 2015 config-2.6.32-504.30.3.el6.x86_64
-rw-r--r-- 1 root root 2546171 Oct 15 2015 System.map-2.6.32-504.30.3.el6.x86_64
-rw-r--r-- 1 root root 200246 Oct 15 2015 symvers-2.6.32-504.30.3.el6.x86_64.gz
-rw------- 1 root root 19360700 Oct 15 2015 initramfs-2.6.32-504.30.3.el6.x86_64.img
-rwxr-xr-x 1 root root 4222736 Nov 23 2015 vmlinuz-2.6.32-573.12.1.el6.x86_64
-rw-r--r-- 1 root root 107139 Nov 23 2015 config-2.6.32-573.12.1.el6.x86_64
-rw-r--r-- 1 root root 2585672 Nov 23 2015 System.map-2.6.32-573.12.1.el6.x86_64
-rw-r--r-- 1 root root 206008 Nov 23 2015 symvers-2.6.32-573.12.1.el6.x86_64.gz
-rw------- 1 root root 24340354 Jul 16 03:20 initramfs-2.6.32-573.12.1.el6.x86_64.img
drwxr-xr-x 2 root root 1024 Jul 16 03:20 grub
因为/启动尺寸非常小,(90M 大小)
我们要删除以前的内核/启动包括全部与该内核相关的其他文件
当前运行的内核版本
# uname -r
2.6.32-573.12.1.el6.x86_64
所以现在我想捕获所有与当前的内核,并且可以从中删除/启动
egrep -v 将完成这项工作
# ls -ltr | egrep -v "2.6.32-573.12.1|lost\+found|grub|efi"
-rwxr-xr-x 1 root root 4152624 Oct 15 2015 vmlinuz-2.6.32-504.30.3.el6.x86_64
-rw------- 1 root root 6084011 Oct 15 2015 initrd-2.6.32-504.30.3.el6.x86_64kdump.img
-rw-r--r-- 1 root root 106371 Oct 15 2015 config-2.6.32-504.30.3.el6.x86_64
-rw-r--r-- 1 root root 2546171 Oct 15 2015 System.map-2.6.32-504.30.3.el6.x86_64
-rw-r--r-- 1 root root 200246 Oct 15 2015 symvers-2.6.32-504.30.3.el6.x86_64.gz
-rw------- 1 root root 19360700 Oct 15 2015 initramfs-2.6.32-504.30.3.el6.x86_64.img
# rpm -qa | grep "2.6.32-504.30.3"
kernel-2.6.32-504.30.3.el6.x86_64
所以我的计划是执行以下操作
删除之前的内核
rpm –e kernel-2.6.32-504.30.3.el6.x86_64
从中删除以下文件/启动
rm config-2.6.32-504.30.3.el6.x86_64 rm System.map-2.6.32-504.30.3.el6.x86_64 rm symvers-2.6.32-504.30.3.el6.x86_64.gz rm initramfs-2.6.32-504.30.3.el6.x86_64.img
我的问题:
我的计划是有风险 ?或者我可以当然我的手术是否安全?
答案1
前面的答案应该有效,但我想提一下“Yum-utils”可以使这更简单
- 使用以下命令检查已安装的内核:
rpm -q kernel
- 安装 yum 实用程序:
yum install yum-utils
- 包清理其中 count 是您想要保留的内核数量:
package-cleanup --oldkernels --count=2
答案2
我认为你的计划过于复杂了。
无论如何,您在步骤 2 中建议删除的文件很可能都属于相关内核包。在我的测试 RHEL 6 机器上:
$ rpm -qf /boot/initramfs-2.6.32-573.18.1.el6.x86_64.img kernel-2.6.32-573.18.1.el6.x86_64
ETC。
因此,步骤 1 应该删除所有内容。至于要删除的内容,rpm -qa kernel\*
将列出所有已安装的内核包。只需 grep 找出不匹配的内容uname -r
即可。请注意这可能会如何影响您的 GRUB 配置,但如果您留在 RHEL 框架内,则 GRUB 应该仅引用已安装的内核。