centos7内核kernel升级到最新版本

centos7系统内核升级到最新的kernel-ml5.x

准备

查看系统版本
cat /etc/redhat-release	
看当前操作系统版本信息
cat /proc/version	
查看版本当前操作系统内核信息
uname -a	
输出	
Linux 140 3.10.0-1127.13.1.el7.x86_64 #1 SMP Tue Jun 23 15:46:38 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux	
.x86_64 	硬件平台	
140	节点名称	
 3.10.0-1127.13.1.el7.x86_64	操作系统发行编号	
GNU/Linux	操作系统名称	
#1 SMP Tue Jun 23 15:46:38 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux	系统版本和时间	

uname -r 	查看内核版本	
查看已安装的内核
rpm -qa | grep kernel	

centos 7.X系统自带的3.10.x内核存在一些bugs,例如导致运行的docker、kubernetes不稳定,需要升级内核到4.4版本以上	

升级内核-小版本升级

kernel-ml 不支持使用 yum -y update 直接更新内核。

查看当前安装和可升级的版本
yum list kernel	
升级
yum update kernel -y	
重启验证
reboot	
uname -a	

升级内核-大版本升级

更新仓库
yum -y update	
导入公钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org	
启用 ELRepo 仓库

ELRepo 仓库是基于社区的用于企业级 Linux 仓库,提供对 RedHat Enterprise (RHEL) 和 其他基于 RHEL的 Linux 发行版(CentOS、Scientific、Fedora 等)的支持

centos8	
  yum install https://www.elrepo.org/elrepo-release-8.0-2.el8.elrepo.noarch.rpm

centos7	
  rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm	
  或者 yum install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm	
载入elrepo-kernel元数据
yum --disablerepo=* --enablerepo=elrepo-kernel repolist	
查看已安装和可安装系统内核包
查看所有的内核
  yum --disablerepo=* --enablerepo=elrepo-kernel list kernel*	

仅查看可安装的内核	
  yum --disablerepo="*" --enablerepo="elrepo-kernel" list available 
  #–enablerepo 选项开启 CentOS 系统上的指定仓库。默认开启的是 elrepo,这里用 elrepo-kernel 替换。
安装最新版Kernel
yum --disablerepo=* --enablerepo=elrepo-kernel install -y kernel-ml.x86_64	
#kernel-ml 中的ml是英文【mainline stable】的缩写,elrepo-kernel中罗列出来的是最新的稳定主线版本。	
#kernel-lt 中的lt是英文【long term support】的缩写,elrepo-kernel中罗列出来的长期支持版本。	
#也可指定安装版本	
设置 grub2(设置为默认启动选项并重启)
查看系统上的所有内核	
  awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg	
    #centos8 已经改变 不能用这个查看	
	    #若/etc/grub2.cfg不存在,先执行:
	      yum install -y grub2
      grub2-mkconfig -o /boot/grub2/grub.cfg
设置默认启动选项
      grub2-set-default 0
        # 0 为最新内核
重启验证
reboot	
uname -a	

删除旧内核(可不执行)
通过 yum remove 命令或通过 yum-utils 工具	

查看系统中全部的内核	
rpm -qa | grep kernel	

卸载旧内核
更新完重启之后,可使用 yum -y remove kernel-ml-<完整的版本号>

删除旧内核的 RPM 包	
yum remove kernel-3.10.0-957.1.3.el7.x86_64 kernel-3.10.0-693.el7.x86_64 kernel-tools-3.10.0-957.1.3.el7.x86_64	
或 rpm -e	
通过 yum-utils 工具	

如果安装的内核不多于 3 个,yum-utils 工具不会删除任何一个。只有在安装的内核大于 3 个时,才会自动删除旧内核	
yum install yum-utils	

package-cleanup --oldkernels	

删除旧版本的内核工具包	
 yum remove kernel-tools-libs.x86_64 kernel-tools.x86_64	

安装新版本工具包	
yum --disablerepo=\* --enablerepo=elrepo-kernel install -y kernel-ml-tools.x86_64	
posted @ 2022-02-11 11:22  tangshow  阅读(637)  评论(0编辑  收藏  举报