Centos 7 kernel升级到指定的版本


一、升级到最新kernel版本
1、查看当前kernel版本
# uname -a
2、导入elrepo的key,然后安装elrepo的yum源
# rpm -import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
# rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
3、使用以下命令列出可用的内核相关包,如下图:
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
 
如图可以看出,长期维护版本lt为5.4,最新主线稳定版ml为5.16,我们需要安装最新的主线稳定内核,使用如下命令:
yum -y --enablerepo=elrepo-kernel install kernel-ml.x86_64 kernel-ml-devel.x86_64
4、查看内核版本默认启动顺序:
# awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
 
如图,4.19版本内核目前位置为0,原来的3.10版本内核目前位置为1,所以需要修改内核启动顺序为0。
5、修改grub中默认版本启动顺序:
vim /etc/default/grub
 
如图,将GRUB_DEFAULT=saved改为GRUB_0=saved,保存退出vim。
6、运行grub2-mkconfig命令来重新创建内核配置:
grub2-mkconfig -o /boot/grub2/grub.cfg
7、重启:reboot
8、待启动完毕,查看系统内核:uname -r
 
如图,内核版本已升级为5.16

 

 

 

 

二、使用源码升级到指定的版本
下载指定版本源码:链接
1、解压源码包到/usr/src/
# tar -xf linux-4.14.115.tar.xz -C /usr/src/
2、把/boot//boot/config-3.10.0-957.el7.x86_64复制到刚才解压的位置命名
为"config"加快速度,减少出错。
cp /boot//boot/config-3.10.0-957.el7.x86_64   /usr/src/linux-4.14.115/conifg
3、配置
# cd /usr/src/linux-4.14.115
# make menuconfig
 
展开File systems ---> DOS/FAT/NT Filesystems ---> NTFS file system support,设为[M]
展开Device Drivers ---> IEEE 1394 (FireWire) supports ---> FireWire driver stack,设为[ ]
编辑config,在最后添加以下配置
CONFIG_DEBUG_SECTION_MISMATCH=y //查看更详细输出
CONFIG_SYSFS_DEPRECATED_V2=y //启用新版sysfs路径
# make   //编译内核
# make modules //编译模块
# make modules_install //安装内核
# make  install 
4、启用新内核,修改默认引导项
[root@localhost lvim /etc/grub.conf 
调整配置文件中的default项,由1改为0,然后重启即可。
#uname -a

 

 

三、通过源码编译rpm包安装
下载指定版本源码:链接
1、解压源码包
tar -xf linux-4.14.115.tar.xz
2、编译rpm包
make rpm
会生成这三个包
kernel-4.14.115-1.x86_64.rpm kernel-devel-4.14.115-1.x86_64.rpm kernel-headers-4.14.115-1.x86_64.rpm
3、使用编译后的rpm包升级
# yum localinstall kernel-4.14.115-1.x86_64.rpm -y
# yum localinstall kernel-devel-4.14.115-1.x86_64.rpm -y
# yum localinstall kernel-headers-4.14.115-1.x86_64.rpm -y
4、修改grub中默认版本启动顺序:
vim /etc/default/grub
 
如图,将GRUB_DEFAULT=saved改为GRUB_0=saved,保存退出vim。
5、运行grub2-mkconfig命令来重新创建内核配置:
grub2-mkconfig -o /boot/grub2/grub.cfg
6、重启:reboot
7、待启动完毕,查看系统内核:uname -r

 

 


 

### CentOS 7内核升级方法 在CentOS 7中,可以通过多种方式将内核版本升级到最新。以下是详细的说明: #### 使用ELRepo源升级内核 为了简化操作并确保稳定性,推荐使用ELRepo源来升级内核。具体步骤如下: 1. **导入GPG密钥** 需要先导入ELRepo的官方GPG密钥以验证软件包的真实性。 ```bash rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org ``` 2. **安装ELRepo存储库** 安装ELRepo存储库以便访问最新的内核版本。 ```bash rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm ``` 3. **安装最新主线内核** 启用`elrepo-kernel`仓库后,可以安装最新的主线内核(通常是最新的稳定版)。 ```bash yum --enablerepo=elrepo-kernel install kernel-ml -y ``` 如果需要长期支持的内核,则可以选择安装`kernel-lt`[^3]。 4. **设置默认启动项** 升级完成后,需修改GRUB配置文件以指定内核作为默认引导选项。 ```bash grub2-set-default 0 grub2-mkconfig -o /boot/grub2/grub.cfg ``` 5. **重启系统** 执行以下命令使更改生效。 ```bash reboot ``` 6. **确认内核版本** 系统重启后,可通过以下命令查看当前运行的内核版本。 ```bash uname -r ``` #### 编译安装自定义内核 如果需要更高级的功能或者特定补丁的支持,也可以手动编译安装内核。此过程较为复杂,适合有经验的用户。 1. **准备开发工具链** 安装必要的编译工具和头文件。 ```bash yum groupinstall "Development Tools" -y yum install ncurses-devel bc bison flex elfutils-libelf-devel openssl-devel -y ``` 2. **下载目标内核源码** 访问Linux内核官方网站获取所需版本的源代码压缩包,并解压至工作目录。 3. **配置与编译** 进入解压后的源码路径执行以下指令完成定制化构建流程。 ```bash make menuconfig make && make modules_install && make install ``` 4. **更新引导加载器** 类似于上述方法调整GRUB设定指向新建好的镜像位置。 5. **测试全新环境** 关机前建议保留旧版本以防万一出现问题能够迅速回滚恢复正常状态。 ```python print("成功升级内核!") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值