5

我目前有两个问题:

1) 是否可以在 rpm 规范文件中指定一个包的范围?就像是

package >= 1.0.0 和 package < 1.0.50 意味着它将选择更接近 1.0.50 的最新包版本

2) 是否有人知道 yum 是否会更新到更高版本的软件包,即使 spec 文件中指定的版本较低?还是有什么可以避免百胜升级到更高版本?这是我更清楚的例子:

我的仓库中有两个包:package-1.0.5-1 package-2.0.10-1

如果我的包装规格文件!有以下要求要求:包> 1.0.5

当我执行 yum 来安装 packageA 时,这意味着它将安装更高版本的 1.0.5 版本,或者它会假设 2.0.10 更高版本并安装它?我想要实现的是某种告诉我的包只安装了 1.0.5 版本并且不要跳到 2.x 版本。

我希望我把自己说清楚了。感谢您可以给我的任何提示或回复

4

1 回答 1

1

我不明白为什么您不能指定范围,您可能需要在规范文件的两行中输入它。

但是,对于第二个问题,yum可能会在被要求升级时尝试安装2.0.10,然后抱怨冲突/要求(您没有指定范围的用途)。所以它会惹恼用户。

如果您可以控制目标包,一种解决方案是命名版本 2 package2-2.0.10,这种情况经常发生。就 rpm/yum 而言,这是一个完全不同的包,不会被视为过去的选项package-1.0.50

有关更多信息,请参阅此 wiki 页面。

于 2012-09-13T09:01:24.760 回答