Linux kernel升级(详)

环境:

系统版本:CentOS Linux release 7.4.1708(Core)

内核版本:3.10.0-693.el7.x86 64

内核由3.10升级5.4

升级说明:

Linux Kernel代码执行漏洞(CVE-2020-14386) ,Linux kernel <5.9-rc4

Linux kernel拒绝服务漏洞(CVE-2021-38207),Linux kernel < 5.12.13

Linux Kernel本地权限提升漏洞(CVE‐2021-33909),Linux Kernel >=3.16 ,<5.13.3

Linux kernel eBPF本地权限提升漏洞(CVE-2021-3490),Linux kernel v5.13-rc4

1.导入elrepoe public key

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

2.安装elrepo源

yum install https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm

Linux kernel升级(详)_第1张图片

3.查询elrepo-kernel可用版本

yum --disablerepo="*" --enablerepo="elrepo-kernel" list available

Linux kernel升级(详)_第2张图片

4.安装部署

yum --enablerepo=elrepo-kernel install kernel-lt //安装lt版本

yum --enablerepo=elrepo-kernel install kernel-ml //安装ml版本

注:kernel-ml #主线稳定版本,kernel-lt #长期支持版本,更加稳定(部分需要打补丁),建议使用ml版本,需考虑业务,安装前请在测试机上测试。

Linux kernel升级(详)_第3张图片

5.查看内核是否载入到grub2

sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg

//容易在空格处输错,sudoawk-F\''$1=="menuentry"{printi++" : "$2}'/etc/grub2.cfg

6.设置最新版本为启动内核版本

grub2-set-default 0 //对应上述内核前的序号

其他方法:

vim /etc/default/grub

GRUB_DEFAULT=0

Linux kernel升级(详)_第4张图片

7.生成grub配置文件

grub2-mkconfig -o /boot/grub2/grub.cfg

Linux kernel升级(详)_第5张图片

8.重启查看内核

reboot重启后,查看内核升级成功

9.查看kernel可用版本

rpm -qa |grep kernel

10.卸载kernel历史版本

yum remove kernel-3.10.0* * * //清理rpm -qa |grep kernel 除最新下载版本外的所有版本及组件

Linux kernel升级(详)_第6张图片

11.安装kernel依赖组件

需要完成第十步卸载,再安装,否则有冲突

yum --enablerepo=elrepo-kernel install kernel-lt-devel kernel-lt-doc kernel-lt-headers kernel-lt-tools kernel-lt-tools-libs kernel-lt-tools-libs-deve //lt版本

yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml-doc kernel-ml-headers kernel-ml-tools kernel-ml-tools-libs kernel-ml-tools-libs-deve //ml版本

12.安装其他依赖组件

yum -y install gcc gcc-c++ glibc-devel glibc-headers

参考文档:

https://blog.csdn.net/MssGuo/article/details/127184206

https://blog.csdn.net/weixin_43616190/article/details/126295883

你可能感兴趣的:(服务器,linux)