The Linux Kernel Archiveshttps://www.kernel.org/内核网站
ELRepo | HomePageELRepohttp://elrepo.org/tiki/tiki-index.php一个linux社区的仓库源,ELRepo官网
环境 centos7 —— 3.10.0-1160.102.1.el7.x86_64
查看当前内核版本
uname -r
Index of /linux/kernel/el7/x86_64/RPMS (elrepo.org)https://elrepo.org/linux/kernel/el7/x86_64/RPMS/
这里能离线下载到内核的rpm包,如果你的linux不联网,则可以离线下载安装包
找一台可以联网的服务器下载内核包,将包下载下来以后就能放到别的上面用了
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-lt-5.4.257-1.el7.elrepo.x86_64.rpm
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-lt-devel-5.4.257-1.el7.elrepo.x86_64.rpm
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-lt-doc-5.4.257-1.el7.elrepo.noarch.rpm
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-lt-headers-5.4.257-1.el7.elrepo.x86_64.rpm
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-lt-tools-5.4.257-1.el7.elrepo.x86_64.rpm
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-lt-tools-libs-5.4.257-1.el7.elrepo.x86_64.rpm
wget https://elrepo.org/linux/kernel/el7/x86_64/RPMS/kernel-lt-tools-libs-devel-5.4.257-1.el7.elrepo.x86_64.rpm
yum install -y ./kernel-lt-5.4.257-1.el7.elrepo.x86_64.rpm
yum install -y ./kernel-lt-devel-5.4.257-1.el7.elrepo.x86_64.rpm
yum install -y ./kernel-lt-doc-5.4.257-1.el7.elrepo.noarch.rpm
yum install -y ./kernel-lt-headers-5.4.257-1.el7.elrepo.x86_64.rpm
yum install -y ./kernel-lt-tools-libs-5.4.257-1.el7.elrepo.x86_64.rpm
yum install -y ./kernel-lt-tools-5.4.257-1.el7.elrepo.x86_64.rpm
yum install -y ./kernel-lt-tools-libs-devel-5.4.257-1.el7.elrepo.x86_64.rpm
刚刚安装的内核即0 : CentOS Linux (5.4.257-1.el7.elrepo.x86_64) 7 (Core)
我们需要把grub默认设置为0
可以通过 grub2-set-default 0 命令设置或编辑 vim /etc/default/grub 文件来设置
vim /etc/default/grub
GRUB_DEFAULT=0 #这句改为GRUB_DEFAULT=0 意思是GRUB初始化页面的第一个内核将作为默认内核,保存退出
grub2-mkconfig -o /boot/grub2/grub.cfg
#重启linux系统
reboot
#重启完成,查看现在linux内核,已经变成5.4.257了
uname -r
#安装完成之后,会在/usr/src/kernels目录生成内核的源码包,这个仅了解即可
[root@jump ~]# ls /usr/src/kernels/5.4.257-1.el7.elrepo.x86_64/
arch block certs crypto drivers fs include init ipc Kconfig kernel lib Makefile mm Module.symvers net samples scripts security sound System.map tools usr virt
#导入公钥
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
#下载并安装elrepo仓库
yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
#官网提示安装的,那就安装
yum install -y yum-plugin-fastestmirror
#查看elrepo源里可用内核版本,可以看到有长期支持的版本5.4.257和稳定的主线版本6.0.0
# lt = long time 长期支持内核,采用长期支持版本(kernel-lt),更加稳定一些
# ml=mainline 稳定主线内核
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
安装主线版本,稳定性可能欠佳
yum --enablerepo=elrepo-kernel install kernel-ml -y
安装稳定可靠版本
yum --enablerepo=elrepo-kernel install kernel-lt -y
安装完之后,重启要手动选择版本
如果你想让开机自动选择最新版本 那么修改 /etc/default/grub
把里面的其中一项改为 GRUB_DEFAULT=0
修改完执行
grub2-mkconfig -o /boot/grub2/grub.cfg
这样开机启动后就自动选择最新的了
Linux是支持多版本内核共存的,无非是系统启动的时候应用哪个版本内核而已
如果你想将原来的删除可以使用
yum remove kernel-3.10.0-1160* -y
但是你删除了之后要重新安装一些以依赖包,因为他在删除的时候带着依赖环境都删了
yum install gcc gcc-c++ glibc-devel glibc-headers -y