如何指示 yum 从特定的 repo 安装特定的包 (rpm)
How to instruct yum to install a specific package (rpm) from a specific repo
如果 rpm 包在多个 repos 中可用(在 /etc/yum.repos.d/ 目录中配置),yum 会扫描所有 repo 文件并从具有最新版本的那个安装它那个包裹。
我想从一个特定的仓库下载包,我也不想完全禁用其他仓库,相反,我只想从一个特定的仓库获取一个包,并禁止它获取从其他仓库下载。
我也不想将版本用作过滤器,因为多个存储库中可能存在相同包的相同版本。
你可以告诉yum
他可以使用哪些存储库:
yum --disablerepo="*" --enablerepo="<desired-repo-id>" install package-name
这不会永久 enable/disable 存储库;只是为了执行这个命令。
如果您不想禁用所有存储库,那么这里唯一的解决方案是使用 yum-priorities
。这是一个插件。
$ yum install yum-plugin-priorities
然后在 /etc/yum.repos.d/*.repo
的 yum 仓库中,你可以使用,
[some_repo]
....
priority=1
注意,最低的数值代表最高的优先级。如果您的包在多个回购中可用,installation/update 将从最高优先级回购中出现。
在此处阅读更多内容:https://wiki.centos.org/PackageManagement/Yum/Priorities
如果 rpm 包在多个 repos 中可用(在 /etc/yum.repos.d/ 目录中配置),yum 会扫描所有 repo 文件并从具有最新版本的那个安装它那个包裹。
我想从一个特定的仓库下载包,我也不想完全禁用其他仓库,相反,我只想从一个特定的仓库获取一个包,并禁止它获取从其他仓库下载。
我也不想将版本用作过滤器,因为多个存储库中可能存在相同包的相同版本。
你可以告诉yum
他可以使用哪些存储库:
yum --disablerepo="*" --enablerepo="<desired-repo-id>" install package-name
这不会永久 enable/disable 存储库;只是为了执行这个命令。
如果您不想禁用所有存储库,那么这里唯一的解决方案是使用 yum-priorities
。这是一个插件。
$ yum install yum-plugin-priorities
然后在 /etc/yum.repos.d/*.repo
的 yum 仓库中,你可以使用,
[some_repo]
....
priority=1
注意,最低的数值代表最高的优先级。如果您的包在多个回购中可用,installation/update 将从最高优先级回购中出现。
在此处阅读更多内容:https://wiki.centos.org/PackageManagement/Yum/Priorities