1. 前言
本文学习并实践CentOS7内核升级方法,备忘。
参考文档:
2. 查看系统版本和当前内核版本
1 | cat /etc/redhat-release |
3. 导入ELRepo项目
1、导入public key
1 | yum -y update |
2、安装ELRepo仓库的yum源
1 | yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm |
3、查看可用内核包
1 | yum --disablerepo="*" --enablerepo="elrepo-kernel" list available |
输出内容示例:
1 | Available Packages |
长期维护版本为 kernal-lt ,最新主线稳定版为 kernal-ml ,这里选择 kernal-lt
4. 安装新版内核
1、安装新版内核 kernal-lt
1 | yum --enablerepo=elrepo-kernel install -y kernel-lt |
安装成功会输出:
1 | Running transaction |
2、查看可用内核版本及启动顺序
1 | awk -F\' '$1=="menuentry " {print i++ " : " $2}' /boot/grub2/grub.cfg |
输出内容示例:
1 | 0 : CentOS Linux 7 Rescue 05110432cb69b45d6c089de56b266fed (5.4.258-1.el7.elrepo.x86_64) |
5. 设置内核启动顺序
1、安装内核升级辅助工具 grub2-pc
1 | yum install -y grub2-pc |
2、设置默认内核
1 | grub2-set-default 1 |
3、生成 grub 配置文件,重新创建内核配置
1 | grub2-mkconfig -o /boot/grub2/grub.cfg |
4、再次查看可用内核版本及启动顺序
1 | awk -F\' '$1=="menuentry " {print i++ " : " $2}' /boot/grub2/grub.cfg |
此时,CentOS Linux (5.4.256-1.el7.elrepo.x86_64) 7 (Core)
的排序号会变成0。
5、修改grub配置
1 | vim /etc/default/grub |
修改 GRUB_DEFAULT
的值为 0
(默认为saved
),其他参数不用变。
6. 重启系统
1、重启系统
1 | reboot |
2、查看当前内核版本
1 | uname -r |
以上,内核升级完成。
7. 删除旧内核(可选)
1、查看可用内核列表
1 | rpm -qa | grep kernel |
输出示例:
1 | kernel-tools-libs-4.19.188-10.el7.ucloud.x86_64 |
2、删除旧内核
1 | yum remove -y kernel-4.19.188 kernel-devel-4.19.188 kernel-headers-4.19.188 |
3、删除旧版本工具包
1 | yum remove kernel-tools-libs-devel-4.19.188-10 kernel-tools-4.19.188-10 |
PS:安装yum-utils 工具,当系统安装的内核大于3个时,会自动删除旧的内核版本
1 | yum install -y yum-utils |
8. 安装新版本工具包(可选)
1、安装新版本工具包
1 | yum --disablerepo=\* --enablerepo=elrepo-kernel install -y kernel-lt-tools.x86_64 |
2、查看已安装内核和工具包
1 | rpm -qa | grep kernel |