CentOS如何更新Linux系统版本
导读:CentOS系统更新与跨版本升级指南 一、先明确目标与准备 明确目标:是做同版本的补丁与安全更新,还是跨版本的主版本升级(如从CentOS 7到CentOS Stream 8/9或迁移至AlmaLinux/Rocky Linux)。 备份...
CentOS系统更新与跨版本升级指南
一、先明确目标与准备
- 明确目标:是做同版本的补丁与安全更新,还是跨版本的主版本升级(如从CentOS 7到CentOS Stream 8/9或迁移至AlmaLinux/Rocky Linux)。
- 备份与评估:备份关键数据与配置(如**/etc、/var、数据库**),在测试环境验证业务兼容性,规划回滚方案与维护窗口。
- 检查现状:查看当前系统版本与内核,确认仓库可用。
- 查看版本:
cat /etc/redhat-release - 查看内核:
uname -r
- 查看版本:
- 重要提醒:CentOS 7已于2024-06-30停止维护(EOL),2024-12-31起官方仓库已下线,继续驻留存在安全与合规风险;建议优先规划迁移至CentOS Stream 8/9或AlmaLinux/Rocky Linux 8/9。
二、同版本更新与内核升级(推荐先做)
- CentOS 7(YUM)
- 刷新缓存并更新:
sudo yum clean all & & sudo yum makecache & & sudo yum update -y - 仅安全补丁:
sudo yum update --security -y - 重启:
sudo reboot
- 刷新缓存并更新:
- CentOS 8/Stream(DNF)
- 更新:
sudo dnf update -y
- 更新:
- 可选:仅升级内核(以获取新驱动/特性)
- 导入ELRepo并安装主线稳定内核(示例为CentOS 7):
sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.orgsudo yum install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpmsudo yum --enablerepo=elrepo-kernel install kernel-ml -y- 确认默认启动新内核(检查
/boot/grub2/grub.cfg或使用grub2-set-default 0后生成配置),重启:sudo reboot
- 验证:
uname -r
- 导入ELRepo并安装主线稳定内核(示例为CentOS 7):
- 自动化安全更新(可选)
- CentOS 7:
sudo yum install yum-cron -y & & sudo systemctl enable --now yum-cron - 编辑
/etc/yum/yum-cron.conf,将apply_updates=yes以启用自动应用。
- CentOS 7:
三、跨版本升级路径与步骤
- 路径A(原地跨版本升级,适用于有明确升级路径的场景)
- CentOS 7 → CentOS Stream 8/9(使用ELevate)
- 准备与检查:
sudo yum update -y,安装ELevate与Leapp:sudo yum install -y elevate-release leapp leapp-data-centos - 预检:
sudo leapp preupgrade(按报告修复阻断项) - 执行升级:
sudo leapp upgrade - 重启:
sudo reboot
- 准备与检查:
- CentOS 8 → CentOS Stream 8(就地切换)
sudo dnf swap centos-linux-repos centos-stream-repos -y & & sudo dnf distro-sync -ysudo reboot
- CentOS 7 → CentOS Stream 8/9(使用ELevate)
- 路径B(迁移替代,推荐用于生产)
- 从CentOS 7/8迁移至AlmaLinux/Rocky Linux 8/9(使用官方迁移工具)
- 备份与评估后,按发行版官方迁移文档执行(如
almalinux-deploy或migrate2rocky),全程在维护窗口内完成并充分回归测试。
- 备份与评估后,按发行版官方迁移文档执行(如
- 从CentOS 7/8迁移至AlmaLinux/Rocky Linux 8/9(使用官方迁移工具)
- 不建议的路线
- 传统
preupgrade-assistant/redhat-upgrade-tool主要用于RHEL到RHEL的升级,对CentOS→CentOS跨主版本支持有限且易出问题,优先采用ELevate或迁移替代。
- 传统
四、离线更新与无外网环境
- 挂载ISO作为本地仓库并更新
- 挂载:
sudo mkdir -p /mnt/cdrom & & sudo mount -o loop /path/to/CentOS.iso /mnt/cdrom - 备份并配置本地源:
sudo mkdir /etc/yum.repos.d/bak & & sudo mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak- 新建
/etc/yum.repos.d/local.repo:[local] name=CentOS Local Repo baseurl=file:///mnt/cdrom enabled=1 gpgcheck=0
- 更新与重启:
sudo yum clean all & & sudo yum makecachesudo yum update -ysudo reboot
- 挂载:
- 说明:离线方式主要用于补丁/小版本更新;跨主版本离线升级风险高、依赖复杂,建议在有外网的预备环境完成升级后再迁移。
五、升级后验证与回滚建议
- 版本与内核核验
- 系统版本:
cat /etc/redhat-release - 内核版本:
uname -r - 已安装包与变更:
rpm -qa --last | head,dnf history(或yum history)
- 系统版本:
- 服务与业务回归
- 校验关键服务(如SSH、数据库、Web/中间件)、网络与存储挂载、定时任务与日志告警。
- 回滚预案
- 使用LVM快照、虚拟机快照或全量/增量备份在升级前建立恢复点;跨版本升级失败时应优先回滚到快照/备份,再评估迁移路径。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: CentOS如何更新Linux系统版本
本文地址: https://pptw.com/jishu/783625.html
