瓦工双十一套餐应该有 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 删除多余内核 & 更新系统
1.查看内核列表
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
2.查看系统当前使用内核
uname -r
显示目前使用内核:
5.3.1-1.el7.elrepo.x86_64
3.删除多余内核
命令: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))
4.检查 boot 剩余空间
df -h /boot
如无意外,就有足够空间 yum update 更新系统了。
5.更改默认启动内核
grub2-editenv list
发现默认已经使用最新内核启动:
saved_entry=CentOS Linux (5.3.1-1.el7.elrepo.x86_64) 7 (Core)
重启一下系统,uname -r 确认系统是否已使用最新内核即可。
若不是使用最新内核启动,可按以下操作试试:
6.查看可用内核
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)
7.修改开机默认使用内核
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 ##有可能需要执行一下
8.检查内核修改结果
grub2-editenv list
结果:
saved_entry=CentOS Linux (5.3.1-1.el7.elrepo.x86_64) 7 (Core)
搞定收工..
文章来源于互联网: CentOS7 更新、更改默认启动内核删除无用内核