背景:
CentOS7有定期的小版本发布,即官网释出的ISO,是带着小版本号的。CentOS7可以使用平滑升级,从这些小版本号中升上去。
但是并不是每一次的更新,都在释出的ISO中,这样的话,一台既有的CentOS7很可能升级到了某个固定的kernel版本中,而这个版本有不在ISO中。
这样的话,我们需要有一种方法,使设备可以使用指定的kernel版本。
如:设备A的版本如下:
[root@localhost ~]# uname -r 3.10.0-693.el7.x86_64 [root@localhost ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core)
设备B的版本是:
[root@dpdk ~]# uname -r 3.10.0-693.2.2.el7.x86_64
现在的目标是:将设备B使用kernel版本
3.10.0-693.el7.x86_64
操作:
1. 查看设备A的包名
[root@localhost ~]# yum list kernel Installed Packages kernel.x86_64 3.10.0-693.el7 @anaconda
2. 在设备B上安装这个包,它的名字用减号连接 kernel-3.10.0-693.e17.x86_64
[root@dpdk ~]# yum install kernel-3.10.0-693.el7.x86_64
3. 在设备B上使用该版本的内核
[grub2] grub2修改启动顺序
[root@dpdk ~]# grub2-editenv list saved_entry=CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core) [root@dpdk ~]# awk -F ' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg 0 : CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core) 1 : CentOS Linux (3.10.0-693.11.1.el7.x86_64) 7 (Core) 2 : CentOS Linux (3.10.0-693.5.2.el7.x86_64) 7 (Core) 3 : CentOS Linux (3.10.0-693.2.2.el7.x86_64) 7 (Core) 4 : CentOS Linux (0-rescue-37138ca794604b28bca5b6394f5cd3c2) 7 (Core) [root@dpdk ~]#