Centos7 升级内核版本

By | 2020 年 1 月 20 日
$ uname -r
3.10.0-514.el7.x86_64

$ uname -a
Linux k8s-master 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

$ cat /etc/redhat-release 
CentOS Linux release 7.3.1611 (Core)

ELRepo 仓库是基于社区的用于企业级 Linux 仓库,提供对 RedHat Enterprise (RHEL) 和 其他基于 RHEL的 Linux 发行版(CentOS、Scientific、Fedora 等)的支持。
ELRepo 聚焦于和硬件相关的软件包,包括文件系统驱动、显卡驱动、网络驱动、声卡驱动和摄像头驱动等

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
yum install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm

如果是centos 8
yum install https://www.elrepo.org/elrepo-release-8.0-2.el8.elrepo.noarch.rpm
同样,如果是CENTOS6
yum install https://www.elrepo.org/elrepo-release-6-9.el6.elrepo.noarch.rpm

查看有哪些新的kernel

yum --disablerepo="*" --enablerepo="elrepo-kernel" list available

你会发现最新的如
kernel-ml 5.4.13-1.el7
安装内核

yum --enablerepo=elrepo-kernel install kernel-ml

--enablerepo 选项开启 CentOS 系统上的指定仓库。默认开启的是 elrepo,这里用 elrepo-kernel 替换。

查看系统上的所有可用内核:

$ sudo awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (5.4.13-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (5.4.13-1.el7.elrepo.x86_64) 7 (Core) with debugging
2 : CentOS Linux (3.10.0-1062.9.1.el7.x86_64) 7 (Core)
3 : CentOS Linux (3.10.0-1062.9.1.el7.x86_64) 7 (Core) with debugging
4 : CentOS Linux 7 (Core), with Linux 0-rescue-8cc82c5d44814ef58be1f76d8536afe

服务器上存在4 个内核,我们要使用 5.4.13 这个版本,可以通过 grub2-set-default 0 命令来设置
然后生成 grub 配置文件并重启

grub2-set-default 0
grub2-mkconfig -o /boot/grub2/grub.cfg
reboot

验证

[root@localhost ~]# uname -r
5.4.13-1.el7.elrepo.x86_64

删除旧内核(可选)

[root@localhost ~]# rpm -qa | grep kernel
kernel-ml-5.4.13-1.el7.elrepo.x86_64
kernel-devel-3.10.0-1062.9.1.el7.x86_64
kernel-tools-3.10.0-1062.9.1.el7.x86_64
kernel-headers-3.10.0-1062.9.1.el7.x86_64
kernel-tools-libs-3.10.0-1062.9.1.el7.x86_64
kernel-3.10.0-1062.9.1.el7.x86_64

yum remove 删除旧内核的 RPM 包

yum remove kernel-3.10.0-1062.9.1.el7.x86_64

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据