CentOS Trigger如何升级内核
导读:CentOS升级内核的常用方法(以CentOS 7为例,CentOS 8及以上类似) 一、升级前准备 备份重要数据:升级内核可能影响系统启动,务必提前备份个人文件、数据库等重要数据。 查看当前内核版本:确认当前内核版本,避免误操作。常用命...
CentOS升级内核的常用方法(以CentOS 7为例,CentOS 8及以上类似)
一、升级前准备
- 备份重要数据:升级内核可能影响系统启动,务必提前备份个人文件、数据库等重要数据。
- 查看当前内核版本:确认当前内核版本,避免误操作。常用命令:
uname -r # 输出示例:3.10.0-1160.el7.x86_64
二、方法一:使用官方yum仓库升级(适合小版本更新)
适用于需要修复安全漏洞或获取小版本更新的场景,升级后的内核版本由官方仓库提供。
- 更新系统包:同步官方仓库的最新软件包信息。
sudo yum update -y
- 安装最新内核:
- CentOS 7:
sudo yum install kernel -y
- CentOS 8及以上:使用dnf命令(dnf是yum的下一代包管理工具)。
sudo dnf install kernel -y
- CentOS 7:
- 设置默认启动内核:
编辑GRUB配置文件,确保系统默认启动新内核(通常新内核会排在列表首位,无需修改):sudo vi /etc/default/grub # 确认GRUB_DEFAULT=0(0表示第一个菜单项,即最新内核)
- 更新GRUB配置:
生成新的GRUB引导菜单,使设置生效。sudo grub2-mkconfig -o /boot/grub2/grub.cfg
- 重启系统:
重启后自动加载新内核。sudo reboot
- 验证新内核:
重启后检查当前运行的内核版本,确认升级成功。uname -r # 应显示新内核版本
三、方法二:使用ELRepo仓库升级(适合获取最新主线/长期支持内核)
适用于需要最新内核特性(如更好的硬件支持、性能优化)的场景,ELRepo是第三方仓库,提供比官方更及时的内核版本。
- 导入ELRepo公钥:
添加ELRepo仓库的GPG密钥,确保软件包来源可信。rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
- 安装ELRepo仓库:
根据CentOS版本安装对应的ELRepo仓库包(以CentOS 7为例):sudo yum install -y https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
- 查看可用内核版本:
列出ELRepo仓库中的内核包,选择需要的版本(kernel-ml
为主线内核,kernel-lt
为长期支持内核)。sudo yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
- 安装最新内核:
- 安装主线内核(推荐,更新更频繁):
sudo yum --enablerepo=elrepo-kernel install kernel-ml -y
- 安装长期支持内核(适合生产环境,稳定性更高):
sudo yum --enablerepo=elrepo-kernel install kernel-lt -y
- 安装主线内核(推荐,更新更频繁):
- 设置默认启动内核:
若新内核未设置为默认,需手动调整GRUB配置:sudo grub2-set-default 0 # 将新内核设为默认启动项(0表示GRUB菜单第一个条目) sudo grub2-mkconfig -o /boot/grub2/grub.cfg # 更新GRUB配置
- 重启系统:
sudo reboot
- 验证新内核:
uname -r # 应显示ELRepo提供的内核版本(如5.15.0-1.el7.elrepo.x86_64)
四、方法三:手动编译安装(适合定制化需求)
适用于需要特定内核功能或版本的场景,但过程复杂,不建议新手使用。
- 下载内核源码:
从Linux内核官网(kernel.org)下载所需版本(如5.15.0)。wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.15.0.tar.xz
- 解压并进入目录:
tar -xvf linux-5.15.0.tar.xz -C /usr/src/ cd /usr/src/linux-5.15.0
- 配置内核:
- 使用当前系统配置(推荐,避免遗漏必要驱动):
cp /boot/config-$(uname -r) .config make oldconfig # 更新配置
- 图形化配置(需安装ncurses-devel):
sudo yum install ncurses-devel -y make menuconfig
- 使用当前系统配置(推荐,避免遗漏必要驱动):
- 编译并安装:
- 编译内核(使用所有CPU核心加速,耗时较长):
make -j$(nproc)
- 安装内核模块和内核:
sudo make modules_install sudo make install
- 编译内核(使用所有CPU核心加速,耗时较长):
- 更新GRUB配置:
sudo grub2-mkconfig -o /boot/grub2/grub.cfg
- 重启系统:
sudo reboot
- 验证新内核:
uname -r # 应显示手动编译的内核版本(如5.15.0)
注意事项
- 依赖问题:安装过程中若出现依赖冲突,需手动解决(如卸载旧内核工具包后再安装新版本)。
- 引导修复:若重启后无法进入系统,需进入GRUB救援模式,选择旧内核启动,再调整默认启动项。
- 生产环境建议:先在测试环境验证新内核的稳定性,避免直接应用于生产服务器。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS Trigger如何升级内核
本文地址: https://pptw.com/jishu/723290.html