写在前面的话
对于系统而言,除非是那种安全性要求非常高的公司或者经常会有第三方安全机构对其漏洞扫描的才容易涉及到系统的内核升级,比如之前呆过一个公司,因为需要做三级等保的原因,就会涉及到系统扫描,这时候就会牵扯到内核升级,当然,这一次写这篇文章的场景不是这个,而是最近又再度学习 Kubernetes,所以升级下内核,尽可能避免已知的因为内核导致的 BUG。
升级方法
特别说明:生产环境需谨慎,请确保测试通过没问题后再进行升级!
我的虚拟机安装的是 CentOS Linux release 7.5.1804 (Core)
查看方法:
cat /etc/redhat-release
内核版本:
uname -r
结果为:3.10.0-1062.7.1.el7.x86_64,这里希望将其升级为 4+ 版本。
1. 更新 yum 仓库为 EL 仓库:
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
2. 查看可供更新的版本:
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
结果如下:
我们选择更新为 4.4 即可。注意 4.4 是 kernel-lt
yum --enablerepo=elrepo-kernel install kernel-lt
3. 此时可以查看系统已经安装的内核版本:
awk -F\‘ ‘$1=="menuentry " {print i++ " : " $2}‘ /etc/grub2.cfg
结果如图:
可以看到新安装的 4.4 版本索引是 0。
4. 修改默认版本:
grub2-set-default 0
修改配置文件:
vim /etc/default/grub
设置 GRUB_DEFAULT=0
5. 生成配置文件:
grub2-mkconfig -o /boot/grub2/grub.cfg
重启服务器测试:
reboot
查看:
uname -r
结果为:4.4.206-1.el7.elrepo.x86_64,到此内核升级完成,当然还可以后续操作,比如删除旧版本的内核。
卸载旧版
1. 查看已安装的内核:
rpm -qa | grep kernel
结果如下:
2. 卸载所有 3 版本:
yum -y remove kernel-tools-3.10.0-862.el7.x86_64 kernel-tools-libs-3.10.0-862.el7.x86_64 kernel-3.10.0-1062.7.1.el7.x86_64 kernel-headers-3.10.0-1062.7.1.el7.x86_64 kernel-3.10.0-862.el7.x86_64
3. 此时查看内核:
awk -F\‘ ‘$1=="menuentry " {print i++ " : " $2}‘ /etc/grub2.cfg
结果如下:
只剩下两个!到此真正算是升级完成!
原文地址:https://www.cnblogs.com/Dy1an/p/12011691.html
时间: 2024-09-29 08:42:51