CentOS7更换内核

如题,虽然可能很多地方都有类似介绍。

安装

首先到 http://elrepo.org/tiki/HomePage ,按照步骤导入公钥和7的yum源。

1
2
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
dnf install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm

换一波tuna源。

1
2
3
vim /etc/yum.repos.d/elrepo.repo
:%s/mirrorlist=/#mirrorlist=/g
:%s/elrepo.org\/linux/mirrors.tuna.tsinghua.edu.cn\/elrepo/g

其次,确认自己需要mainline还是longtime的内核。前者更新快,后者支持时间更久更稳定。

1
dnf --enablerepo=elrepo-kernel install -y --allowerasing kernel-lt kernel-lt-headers kernel-lt-tools kernel-lt-devel

更换

然后查看自己的grub2启动表。

1
2
3
4
5
6
7
# awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
0 : CentOS Linux (5.11.16-1.el7.elrepo.x86_64) 7 (Core)
1 : CentOS Linux (3.10.0-1160.24.1.el7.x86_64) 7 (Core)
2 : CentOS Linux (3.10.0-1127.13.1.el7.x86_64) 7 (Core)
3 : CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core)
4 : CentOS Linux (0-rescue-2af5b98ee1d740ee9ef8e747f5da2b49) 7 (Core)

接着查看当前启动项。

1
2
# grub2-editenv list
saved_entry=CentOS Linux (3.10.0-1160.24.1.el7.x86_64) 7 (Core)

更改为第一个,再看一下当前启动项。

1
2
3
4
# grub2-set-default 0

# grub2-editenv list
saved_entry=0

更改成功后reboot,uname看一下内核。

1
2
# uname -r
5.11.16-1.el7.elrepo.x86_64