Linux内核升级
目录
对于 Ubuntu 等 apt 系的发行版来说,一般不需要升级内核版本。
如果你使用的是 CentOS 等 rpm 系的发行版,内核版本一般较低,某些情况下需要升级内核版本。
查看当前内核
1 安装ELRepo 镜像
由于GFW,使用 elrepo 官方源可能速度较慢,可将 baseurl 修改为国内镜像站地址。
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# RHEL8,CentOS8
yum install -y https://www.elrepo.org/elrepo-release-8.el8.elrepo.noarch.rpm
# RHEL7,SL7,CentOS7
yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
# RHEL6,SL6,CentOS6
yum install -y https://www.elrepo.org/elrepo-release-6.el6.elrepo.noarch.rpm
# 建议先备份 /etc/yum.repos.d/elrepo.repo
cp /etc/yum.repos.d/elrepo.repo /etc/yum.repos.d/elrepo.repo.bak
然后编辑/etc/yum.repos.d/elrepo.repo
文件,在mirrorlist=
开头的行前面加#
注释掉;并将elrepo.org/linux
替换为mirrors.tuna.tsinghua.edu.cn/elrepo
sed -i 's#elrepo.org/linux#mirrors.tuna.tsinghua.edu.cn/elrepo#g' /etc/yum.repos.d/elrepo.repo
sed -i 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/elrepo.repo
2 安装内核
安装长期支持内核(lt = long time)
yum --disablerepo=\* --enablerepo=elrepo-kernel -y install kernel-lt
安装稳定主线内核kernel-ml(ml=mainline)
yum --disablerepo=\* --enablerepo=elrepo-kernel -y install kernel-ml
删除旧版本工具包
yum -y remove kernel-tools-libs.x86_64 kernel-tools.x86_64
yum -y remove kernel-headers.x86_64
安装新版本工具包
# 长期支持内核
yum --disablerepo=\* --enablerepo=elrepo-kernel -y install kernel-lt-tools kernel-lt-devel kernel-lt-headers -y
# 稳定主线内核
yum --disablerepo=\* --enablerepo=elrepo-kernel -y install kernel-ml-tools kernel-ml-devel kernel-ml-headers -y
3 修改内核启动顺序
查看内核插入顺序
grep "^menuentry" /boot/grub2/grub.cfg | cut -d "'" -f2
CentOS Linux (5.13.0-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-2b92643a629144ceadb7403c0d9f3683) 7 (Core)
默认新内核是从头插入,默认启动顺序也是从 0 开始。
查看当前实际启动顺序
grub2-editenv list
saved_entry=CentOS Linux (3.10.0-957.el7.x86_64) 7 (Core)
设置默认启动
grub2-set-default 'CentOS Linux (5.13.0-1.el7.elrepo.x86_64) 7 (Core)'
最后重启检查:
reboot
uname -r