yum不支持直接“安装旧版本”,但可通过downgrade或指定版本install实现:先查当前版(yum list installed)和可用旧版(yum --showduplicates list),确保仓库含目标版本;再用sudo yum downgrade pkg-ver 或 sudo yum install pkg-ver 降级,注意核心组件禁降、依赖需兼容。

YUM 本身不支持“安装旧版本”这个动作的直接语义,但可以通过 降级(downgrade) 或 指定版本重装 实现效果。关键在于:必须确保目标旧版本存在于启用的仓库中,且依赖关系可满足。
确认当前版本和可用旧版本
先查已安装版本:
yum list installed | grep package_name再查仓库中所有可用版本(含历史版):
yum --showduplicates list package_name若输出为空或不含目标版本,说明该仓库未提供——需添加含旧包的源(如 vault.centos.org、EPEL 历史分支或自建本地 repo)。
使用 yum downgrade 一键降级
这是最直接的方式,YUM 会自动解析依赖并回退到指定版本:
- 命令格式:sudo yum downgrade package_name-version.release(例如 sudo yum downgrade nginx-1.16.1-1.el7)
- 执行后会列出将被降级的包及关联依赖,输入 y 确认
- 成功后可用 rpm -q package_name 验证版本
手动指定版本安装(适用于 downgrade 不生效时)
当 yum downgrade 报错(如 “No package found” 或依赖冲突),可改用 install 强制覆盖:
- 先卸载当前版本(可选,通常 install 会自动替换):sudo yum remove package_name
- 再明确安装旧版:sudo yum install package_name-version.release
- 若提示依赖缺失,可加 --nogpgcheck(仅限可信环境)或启用对应仓库
注意事项与常见问题
降级不是无风险操作:
- 系统核心组件(如 kernel、glibc、systemd)严禁随意降级,可能导致无法启动
- 某些旧版本依赖已被新仓库移除,需提前下载对应 RPM 包,用 yum localinstall xxx.rpm 安装
- 执行前建议备份配置文件(如 /etc/xxx/)和重要数据
- 若遇到元数据过期,运行 sudo yum clean all && sudo yum makecache 再试











