Linux内核升级 (换国内阿里源)
Linux内核升级
cgroup 的 kmem account 特性在 3.x 内核上有内存泄露问题,如果开启了 kmem account 特性会导致可分配内存越来越少,直到无法创建新 pod 或节点异常。该特性在 3.10 的内核上存在漏洞有内存泄露问题,4.x的内核修复了这个问题。
0. Linux 内核官网
https://www.elrepo.org
有条件的可以登录官网查看下当前最新的内核版本和升级信息
elrepo镜像换成阿里源
编辑你的 /etc/yum.repos.d/elrepo.repo 文件
在 mirrorlist= 开头的行前面加 # 注释掉;并将 elrepo.org/linux 替换为 mirrors.aliyun.com/elrepo。
最后,更新软件包缓存
# 更换的 sed 命令
sed -i.bak 's/^mirrorlist=/#mirrorlist=/; s|^baseurl=http://elrepo.org/linux|baseurl=http://mirrors.aliyun.com/elrepo|' /etc/yum.repos.d/elrepo.repo
sudo yum makecache
1、查看当前内核版本:
uname -r 和 uname -a 查看当前内核版本, cat /etc/centos-release
查看当前系统版本
2.、更新yum源仓库,启用 ELRepo 仓库:
ELRepo 聚焦于和硬件相关的软件包,包括文件系统驱动、显卡驱动、网络驱动、声卡驱动和摄像头驱动等。
# 导入ELRepo仓库的公共密钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# 安装ELRepo仓库的yum源 (Centos 7.X 系列)
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
3、查看可用的系统内核包
# 查看仓库中可用的内核版本
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
当前最新包:kernel-ml-5.15.1
# 可直接访问https://elrepo.org/linux/kernel/el7/x86_64/RPMS/,查看最新版内核
4、安装最新版本内核
#安装最新的内核
yum --enablerepo=elrepo-kernel install kernel-ml -y
# 指定版本安装
yum -y --enablerepo=elrepo-kernel install kernel-ml.x86_64
#--enablerepo 选项开启 CentOS 系统上的指定仓库。默认开启的是 elrepo,这里用 elrepo-kernel 替换。
5、设置 grub2
# 打开并编辑 /etc/default/grub 并设置 GRUB_DEFAULT=0。意思是 GRUB 初始化页面的第一个内核将作为默认内核。
# 也可以通过这个命令来改 (推荐)
grub2-set-default 0
# 生成 grub 配置文件并重启
grub2-mkconfig -o /boot/grub2/grub.cfg
# 要重启虚机
reboot
6、验证
同步骤一
回退内核方法
# 找到要回退的内核版本
cat /boot/grub2/grub.cfg |grep "menuentry "
# 指定回退的版本
grub2-set-default 'CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core)'
grub2-mkconfig -o /boot/grub2/grub.cfg
# 重启
reboot