CentOS 内核版本升级


关于内核

内核进行的是应用软件和计算机硬件的交互工作

undefined

内核进行的是应用软件和计算机硬件的交互工作在计算机科学中,内核(英语:kernel)又称核心,是一个计算机程序,用来管理软件发出的数据I/O(输入与输出)要求,将这些要求转译为数据处理的指令,交由中央处理器(CPU)及计算机中其他电子组件进行处理,是现代操作系统中最基本的部分。

它是为众多应用程序提供对计算机硬件的安全访问的一部分软件,这种访问是有限的,并由内核决定一个程序在什么时候对某部分硬件操作多长时间。直接对硬件操作是非常复杂的。所以内核通常提供一种硬件抽象的方法,来完成这些操作。通过进程间通信机制及系统调用,应用进程可间接控制所需的硬件资源(特别是处理器及IO设备)。

而且现在dockerkubernetes对内核要求比较高,所以升级内核非常有必要。

CentOS 7 更新内核

  1. 先升级小版本
yum update -y kernel
  1. 导入公钥
$ rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
  1. 安装7.x版本的ELRepo
$ rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
  1. 查看内核列表
$ yum --disablerepo=\* --enablerepo=elrepo-kernel list kernel*
  1. 安装新版本内核
$ yum --disablerepo=\* --enablerepo=elrepo-kernel install kernel-lt -y
  • lt (long term support): 长期支持;
  • ml(mainline): 主线版本
  1. 删除旧版本工具包
$ yum remove -y kernel-tools*
  1. 安装新版本工具包
$ yum --disablerepo=\* --enablerepo=elrepo-kernel -y install kernel-lt-tools
  1. 查看内核插入顺序
$ awk -F \' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
  1. 查看当前实际启动内核版本
$ grub2-editenv list
  1. 设置默认启动(这里的0,可以使用上面第8步中的$2替换)
$ grub2-set-default 0
$ grub2-editenv list
saved_entry=0
  1. 重启并检查
$ uname -r
4.4.207-1.el7.elrepo.x86_64

参考文献

  • https://blog.csdn.net/qq_27281257/article/details/82049634
  • https://www.cnblogs.com/clsn/p/10925653.html#centos-7.x%E7%B3%BB%E7%BB%9F
  • http://elrepo.org
  • https://rorschachchan.github.io/2018/08/25/centos6-5升级最新内核4-18的坑/
  • https://rorschachchan.github.io/2018/06/11/阿里云centos7升级内核过程/
  • https://www.admon.org/faqs/kernel-lt-and-kernel-ml/
  • https://cloud.tencent.com/developer/article/1455002
  • https://mp.weixin.qq.com/s/AKkEnXOX6TCMvDR-jjApQg

你可能感兴趣的:(CentOS 内核版本升级)