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)主线的意思,当前主推)
image

安装

安装最新版本内核

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的默认版本
image

服务器上存在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

posted @ 2024-03-05 14:08  liwenchao1995  阅读(52)  评论(0编辑  收藏  举报