瓦工双十一套餐应该有 160 天左右没有重启,今天更新系统,错误提示:At least 30MB more space needed on the /boot filesystem……发现几个无用内核,已有 kernel-ml-5.3.1-1.el7.elrepo.x86_64 内核,但是系统还在使用相对较旧 5.0.1 BBR 内核,于是折腾了一下。
CentOS7 删除多余内核 & 更新系统
查看内核列表
rpm -qa | grep kernel
目前留下了这几个(按道理 3.10 的都可以删除):
kernel-tools-libs-3.10.0-1062.1.1.el7.x86_64 kernel-ml-headers-5.3.1-1.el7.elrepo.x86_64 kernel-ml-5.3.1-1.el7.elrepo.x86_64 kernel-tools-3.10.0-1062.1.1.el7.x86_64 kernel-3.10.0-1062.1.1.el7.x86_64
查看系统当前使用内核
uname -r
显示目前使用内核:
5.3.1-1.el7.elrepo.x86_64
删除多余内核
命令:rpm -e 内核名称,(yum remove 命令也可以)比如:
rpm -e kernel-ml-5.2.11-1.el7.elrepo.x86_64
下面命令可以删除所有非当前使用内核:(此操作需确认清楚)
yum remove $(rpm -qa | grep kernel | grep -v $(uname -r))
检查 boot 剩余空间
df -h /boot
如无意外,就有足够空间 yum update 更新系统了。
更改默认启动内核
grub2-editenv list
发现默认已经使用最新内核启动:
saved_entry=CentOS Linux (5.3.1-1.el7.elrepo.x86_64) 7 (Core)
重启一下系统,uname -r 确认系统是否已使用最新内核即可。
若不是使用最新内核启动,可按以下操作试试:
查看可用内核
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
列表:
0 : CentOS Linux (3.10.0-1062.1.1.el7.x86_64) 7 (Core) 1 : CentOS Linux (5.3.1-1.el7.elrepo.x86_64) 7 (Core) 2 : CentOS Linux 7 Rescue 6a5038154923a6102ea1cf7441924cc8 (5.0.1-1.el7.elrepo.x86_64) 3 : CentOS Linux (0-rescue-bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb) 7 (Core)
修改开机默认使用内核
grub2-set-default 'CentOS Linux (5.3.1-1.el7.elrepo.x86_64) 7 (Core)'
grub2-set-default 0
#grub2-mkconfig -o /boot/grub2/grub.cfg ##有可能需要执行一下
检查内核修改结果
grub2-editenv list
结果:
saved_entry=CentOS Linux (5.3.1-1.el7.elrepo.x86_64) 7 (Core)
折腾一圈也没什么变化,囧~
centos8出来了,可以写个教程了
@浮游 教程?不存在的,我这只能算是折腾记录,都是别人的教程。
@老头 昨天试了一下centos8,连wget都装不上,好像是新系统的源有问题
@浮游 这个没必要尝鲜,哈哈。