温馨提示×

centos yum更新系统指南

小樊
36
2025-12-07 11:44:08
栏目: 智能运维

CentOS 使用 YUM 更新系统指南

一 更新前准备

  • 备份关键数据与配置:包括业务数据、数据库、配置文件(如 /etc/var/lib/home 等),并准备回滚方案。
  • 确认系统与版本:执行 cat /etc/redhat-release,明确是 CentOS 7 还是 CentOS 8/Stream,不同版本在工具与策略上存在差异。
  • 选择维护窗口与方式:尽量在低峰时段进行,先在测试环境验证,必要时采用蓝绿/灰度发布。
  • 检查可用空间与网络:执行 df -h 确认根分区与 /var 有足够空间;确保网络与镜像源可达。
  • 如计划跨小版本或跨大版本,先做兼容性评估与演练,避免直接在生产环境执行大版本升级。

二 常用 YUM 更新命令

  • 检查可用更新:执行 sudo yum check-update
  • 更新指定软件包:执行 sudo yum update <package_name>
  • 更新全系统(常规):执行 sudo yum update
  • 仅应用安全更新:执行 sudo yum update --security
  • 刷新元数据缓存:执行 sudo yum update --refresh
  • 清理本地缓存:执行 sudo yum clean all
  • 说明:CentOS 8 及更高版本默认使用 DNF,命令与 YUM 类似(如 sudo dnf update),在需要更高性能时可优先使用 DNF。

三 自动化与安全更新

  • 安装并启用自动更新(适用于仍使用 YUM 的场景):
    1. 安装组件:sudo yum install yum-cron
    2. 启用并启动:sudo systemctl enable yum-cron && sudo systemctl start yum-cron
    3. 配置策略:编辑 /etc/yum/yum-cron.conf,将 update_cmd = updateapply_updates = yes 按需设置;可按需调整 /etc/yum/yum-cron.d/ 下的策略文件。
  • 建议做法:生产环境优先采用“仅安全更新”或“通知不自动安装”,在维护窗口手动执行,降低业务风险。

四 更新后验证与常见问题

  • 重启系统:内核或关键组件更新后执行 sudo reboot
  • 验证更新结果:
    • 查看当前版本:cat /etc/redhat-release
    • 查看可更新包:sudo yum check-updatesudo yum list updates
    • 查看日志:如 tail -f /var/log/messagestail -f /var/log/secure
  • 维护与排障:
    • 清理缓存:sudo yum clean all
    • 检查磁盘:df -h
    • 防火墙与 SELinux:如 sudo firewall-cmd --reloadsestatus
  • 常见问题处理:
    • 冲突或依赖错误:优先尝试 sudo yum clean all 后重试;必要时使用 yum provides 定位提供者与冲突包。
    • 空间不足:清理 /var/cache/yum、旧日志与镜像缓存,或扩容分区后再更新。
    • 业务连续性:对数据库、消息队列等有状态服务,先摘除流量/维护模式,更新后滚动重启并校验。

五 进阶场景

  • 跨小版本或跨大版本变更:不建议直接用 YUM 在生产环境“跨版本升级”。应先评估与演练,常见路径包括使用 preupgrade-assistantredhat-upgrade-tool 进行升级准备与执行,或采用 distro-sync 在受控环境下同步;操作前务必完整备份回滚预案
  • 内核更新:除发行版内核外,如需新特性或驱动,可通过 ELRepo 仓库安装主线内核(如 kernel-ml),但需评估与测试驱动与兼容性,谨慎在生产环境启用。

0