升级centos内核需谨慎操作,需做好快照或者备份操作。升级后通过uname -r确认版本,并检查日志、网络、服务状态确保系统正常。若失败,可通过grub菜单选择旧内核启动,或在救援模式下修复引导。务必提前备份,防止回滚困难。
#查看内核版本

手动安装 RPM 包(适用于无互联网环境)

如果你在内网环境,服务器无法连接互联网,可以先在有网络的机器上下载好内核RPM包,再拷贝到目标服务器安装。

查看内核版本

uname -r

此学习使用实际慎用,这一步是为了确保所有已安装的软件包都是最新的,避免因为旧软件包与新内核不兼容而引发问题

yum update -y 

rpm包下载地址,下载kernel-lt-5.xx 和kernel-lt-devel-5.xx的包,传到服务器,大多数用户确实只需要这两个。
https://mirrors.coreix.net/elrepo-archive-archive/kernel/el7/x86_64/RPMS/

简洁:
kernel-lt # 内核本身
kernel-lt-devel # 开发文件

实际完整安装(很多用户用不到):
kernel-lt # 内核本身(必须)
kernel-lt-devel # 开发文件(需要编译才用)
kernel-lt-headers # 通常被devel依赖自动安装
kernel-lt-tools # 性能分析(非必须)
kernel-lt-tools-libs # 工具库(非必须)
kernel-lt-doc # 文档(非必须)
kernel-lt-firmware # 固件(通常已被其他包包含)

测试安装,可能需要一些依赖导致安装错误

rpm -Uvh --test kernel-lt-5.4.210-1.el7.elrepo.x86_64.rpm
rpm -Uvh --test kernel-lt-devel-5.4.210-1.el7.elrepo.x86_64.rpm

如果真有依赖问题可以使用yum安装自动解决依赖

yum localinstall -y kernel-lt-*.rpm

没问题就实际安装

rpm -Uvh kernel-lt-5.4.210-1.el7.elrepo.x86_64.rpm
rpm -Uvh kernel-lt-devel-5.4.210-1.el7.elrepo.x86_64.rpm

查看当前有多少个启动选项及其顺序

grep menuentry /boot/grub2/grub.cfg | cut -d "'" -f2

使用最新的内核

grub2-set-default 0  

重启系统

reboot  

验证查看内核版本

uname -r 

package-cleanup 命令需要安装 yum-utils 软件包才能使用

yum install -y yum-utils

一个用于清理旧内核的命令,只保留最近的一个内核版本

package-cleanup --oldkernels --count=1

如果以上语句删除不掉旧内核,则需要手动删除
假设要删除 3.10.0-1160.119.1 版本
先找出所有相关包

rpm -qa | grep 3.10.0-1160.119.1

删除所有相关包,python-perf是工具包,不是内核的一部分,可以安全保留,不影响你清理旧内核的目标

yum remove \
  kernel-3.10.0-1160.119.1.el7.x86_64 \
  kernel-devel-3.10.0-1160.119.1.el7.x86_64 \
  kernel-headers-3.10.0-1160.119.1.el7.x86_64 \
  kernel-tools-3.10.0-1160.119.1.el7.x86_64 \
  kernel-tools-libs-3.10.0-1160.119.1.el7.x86_64 

更新GRUB配置

grub2-mkconfig -o /boot/grub2/grub.cfg

查看剩余的内核

rpm -qa | grep ^kernel- | sort
Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐