前提
已经下载好要更新的rpm包
安装
rpm -ivh kernel-ml-4.17.11-1.el7.elrepo.x86_64.rpm
输出以下内容:
准备中... ################################# [100%]
正在升级/安装...
1:kernel-ml-4.17.11-1.el7.elrepo ################################# [100%]
查看系统上的所有可以内核
sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
输出以下内容:
0 : CentOS Linux (4.17.11-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1160.31.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-3c9f92c255c843d18ab59d4e2f26c3e5) 7 (Core)
设置 grub2
由上述命令的输出可以看出,在更新完后,目前机器上存在4个内核。可以通过以下两种方式进行设置:
- 方式1
sudo grub2-set-default 0
- 方式2:设置 GRUB_DEFAULT=0,表示使用上一步的 awk 命令显示的编号为 0 的内核作为默认内核:
vi /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 console=ttyS0 console=tty0 panic=5"
> GRUB_DISABLE_RECOVERY="true"
> GRUB_TERMINAL="serial console"
> GRUB_TERMINAL_OUTPUT="serial console"
> GRUB_SERIAL_COMMAND="serial --speed=9600 --unit=0 --word=8 --parity=no --stop=1"
生成 grub 配置文件并重启
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo reboot
验证
uname -a
输出:
Linux localhost.localdomain 4.17.11-1.el7.elrepo.x86_64 #1 SMP Sat Jul 28 09:33:09 EDT 2018 x86_64 x86_64 x86_64 GNU/Linux