一、查看/更换系统内核
1.1 查看当前运行环境的内核
[root@localhost ~]# uname -sr
Linux 5.4.166-1.el7.elrepo.x86_64
1.2 查看系统上所有可用内核
[root@localhost ~]# awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (5.4.166-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1160.114.2.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
3 : CentOS Linux (0-rescue-1a2eb3e86afa4a0eb4f07c80d956796c) 7 (Core)
其中,/etc/grub2.cfg是 grub2 在开机启动过程中读取的配置文件包含了引导菜单配置,内核参数,模块加载配置等信息。
1.3 切换内核
方法一:通过启动菜单更换内核
正常开机启动后,我们就会看到一个类似上图的grub2 开机启动菜单界面。
使用上下键,可以选择开机启动项
按下 e 键就可以编辑光标所在项的启动选项
按下 c 键就可以进入 grub 的命令行
默认情况下,如果不做任何选择,五秒之后系统在默认的开机启动项上开机启动,如果进行了上述任何一个操作则必须按下确认键才能启动操作系统。
方法二:更换默认启动内核
如果你经常需要使用某个内核环境,可以将它设置为grub2的默认版本。这里以CentOS Linux (3.10.0-1160.114.2.el7.x86_64) 7 (Core)为例:
grub2-set-default 'CentOS Linux (3.10.0-1160.114.2.el7.x86_64) 7 (Core)'
或者根据1.2中输出的内核编号进行设置。
grub2-set-default 1
reboot之后系统内核就变成了我们设置的默认内核。
二、安装内核
2.1 使用ELRepo安装
ELRepo,是一个RHEL和CentOS的第三方免费资源资料库,支持,用户可以通过该网站进行软件和驱动的安装和升级操作。
参考:Linux入门:CentOS使用ELRepo源升级内核
2.2 安装指定内核版本
如果需要安装特定内核版本,可以根据以下步骤进行手动安装
pkgs.org-download/kernel 找 kernel-xxx.rpm(把-d换成/d)
pkgs.org-download/kernel-devel 找 kernel-devel-xxxx.rpm(把-d换成/d)
用rpm -ivh安装或者用yum安装:
rpm -ivh kernel-3.10.0-514.el7.x86_64.rpm
rpm -ivh kernel-devel-3.10.0-514.el7.x86_64.rpm --force # 安装对应的内核
注:如果安装失败,可以使用强制安装
rpm -ivh *.rpm --nodeps --force (忽略关联性、强制安装)
其他rpm包下载源:
cdn.kernel.org下载
mirrors.coreix.net-elrepo-archive-archive/kernel/el7/x86_64/RPMS/(把-elrepo换成/elrepo)