linux 升级内核
linux 升级内核
CentOS 7.x 系统自带的3.10.x内核存在一些Bugs.导致运行的Docker.Kubernetes不稳定。
yum源仓库更新
更新yum源仓库
yum -y update
启用 ELRepo 仓库
导入ELRepo仓库的公共密钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
安装ELRepo仓库的yum源
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
查看可用的系统内核包
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
可以看到5.4和5.12两个版本(lt为长期支持版;ml:(mainline)主线的意思,当前主推)
安装
安装最新版本内核
yum --enablerepo=elrepo-kernel install kernel-ml
如果要安装最新版本的就执行
yum --enablerepo=elrepo-kernel install kernel-lt kernel-lt-devel
如果指定安装可从这里下载The Linux Kernel Archives,安装
yum install kernel-3.10.0-862.14.4.el7.x86_64.rpm -y
后续执行命令同下:
--enablerepo 选项开启 CentOS 系统上的指定仓库。默认开启的是 elrepo,这里用 elrepo-kernel 替换。
设置 grub2
查看系统上的所有可用内核:
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
设置新的内核为grub2的默认版本
服务器上存在5个内核,我们要使用最新版本,其中 0 是上面查询出来的可用内核,可以通过 grub2-set-default 0 命令或编辑 /etc/default/grub 文件来设置
方法1、通过 grub2-set-default 0 命令设置(推荐)
grub2-set-default 0
方法2、编辑 /etc/default/grub 文件
设置 GRUB_DEFAULT=0,通过上面查询显示的编号为 0 的内核作为默认内核:
vim /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=0
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=cl/root rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
生成 grub 配置文件并重启
内核安装好后,需要设置为默认启动选项并重启后才会生效
grub2-mkconfig -o /boot/grub2/grub.cfg
重启服务器
reboot
查看内核升级是否成功
uname -a
原文链接:https://blog.csdn.net/Doudou_Mylove/article/details/102818959