- 工信部备案号 滇ICP备05000110号-1
- 滇公安备案 滇53010302000111
- 增值电信业务经营许可证 B1.B2-20181647、滇B1.B2-20190004
- 云南互联网协会理事单位
- 安全联盟认证网站身份V标记
- 域名注册服务机构许可:滇D3-20230001
- 代理域名注册服务机构:新网数码
欢迎来到蓝队云技术小课堂,每天分享一个技术小知识。
在 CentOS 7 中,yum 默认会安装软件的最新版本,这对于大多数情况是有益的,但有时我们可能需要安装指定版本的旧版软件,或者出于兼容性等需求,希望避免升级到最新版。幸运的是,yum 提供了几种方法,帮助我们安装特定版本的软件包。下面就详细介绍几种常见的方法,帮助你在 CentOS 7 中灵活安装指定版本的软件。
1. 查看可用版本
首先,你需要查看某个软件包的所有可用版本。通过以下命令,你可以列出仓库中该软件包的所有版本信息:
yum list <软件包名> --showduplicates
例如,如果你想查看 nginx 的所有可用版本:
yum list nginx --showduplicates
该命令会列出所有可用的版本信息,包括版本号和架构类型。通过这种方式,你可以选择合适的版本进行安装。
2. 安装指定版本的软件包
一旦你找到了想要安装的版本,可以使用以下命令来安装指定版本的包:
yum install <软件包名>-<版本号>
例如,假设你想安装 nginx 版本 1.18.0:
yum install nginx-1.18.0
在运行该命令时,确保版本号与仓库中的版本完全匹配。如果没有指定正确的版本,yum 会默认安装最新的版本。
3. 使用 yum versionlock 锁定软件版本
如果你想安装某个特定版本的软件,并确保在未来不会因为系统更新而意外升级,可以使用 yum-plugin-versionlock 插件来锁定软件包的版本。首先,你需要安装这个插件:
yum install yum-plugin-versionlock
安装完成后,你可以使用以下命令来锁定指定版本:
yum versionlock <软件包名>-<版本号>
例如,要锁定 nginx 的 1.18.0 版本:
yum versionlock nginx-1.18.0
这样,即使你运行 yum update,nginx 的版本也不会被自动更新。如果你想查看哪些软件包已被锁定,可以使用:
yum versionlock list
解除锁定某个软件包时,可以使用:
yum versionlock delete <软件包名>
4. 安装特定版本的软件包并禁用更新
如果你希望禁用更新,但仍然安装指定版本的软件,可以使用 --disableexcludes=all 选项。这将阻止 yum 自动从其他源拉取更新:
yum install <软件包名>-<版本号> --disableexcludes=all
这对于避免软件包版本在安装时被误升级很有帮助。
5. 通过 rpm 安装旧版本
有时候,yum 仓库中并没有你需要的特定版本软件。在这种情况下,你可以通过手动下载 .rpm 包并使用 rpm 工具进行安装。首先,从 CentOS 官方镜像站或其他可靠的源下载所需版本的 .rpm 包,然后使用以下命令进行安装:
rpm -ivh <rpm包路径>
例如,假设你已经下载了 nginx-1.18.0-1.el7.x86_64.rpm 文件,可以通过:
rpm -ivh nginx-1.18.0-1.el7.x86_64.rpm
如果软件包已经安装且需要回退到旧版本,也可以使用 rpm -U 命令进行升级:
rpm -Uvh nginx-1.18.0-1.el7.x86_64.rpm
6. 使用 yum downgrade 降级软件包
如果你已经安装了某个新版本的软件,并希望将其降级到旧版本,可以使用 yum downgrade 命令:
yum downgrade <软件包名>-<版本号>
例如,假设你安装了 nginx 的一个较新版本,现在需要将其降级到 1.18.0 版本:
yum downgrade nginx-1.18.0
yum downgrade 会将软件包恢复到你指定的版本,同时处理相关依赖问题。
7. 手动指定特定软件源进行安装
如果你需要从某个特定的软件源安装指定版本的软件,可以通过 --enablerepo 参数启用该软件源。例如:
yum install <软件包名>-<版本号> --enablerepo=<repo-name>
假设你希望从 nginx-stable 仓库安装 nginx 版本 1.18.0:
yum install nginx-1.18.0 --enablerepo=nginx-stable
通过这种方式,你可以确保安装来自特定仓库的软件包版本。
8. 安装软件时的其他注意事项
确保版本匹配:在安装软件时,要确保你选择的版本与系统架构匹配(如 x86_64)。
软件包仓库:如果你有多个软件源,确保你从正确的仓库安装软件,以免出现版本不一致的问题。
软件锁定:在使用 yum versionlock 时要小心,以免不小心锁定了不需要的软件包版本,造成后续依赖问题。
蓝队云官网上拥有完善的技术支持库可供参考,大家可自行查阅,更多技术问题,可以直接咨询。同时,蓝队云整理了运维必备的工具包免费分享给大家使用,需要的朋友可以直接咨询。
更多技术知识,蓝队云期待与你一起探索。
售前咨询
售后咨询
备案咨询
二维码
TOP