第1版包含以下软件包
Package A-1.0
Package B-1.0
第2版包含以下软件包
Package A-2.0
Package B-2.0
Package C-2.0
在第2版中,Package B-1.0
被分成两个包-- package B-2.0
和package C-2.0
。
现在,当安装了第2版时,如何将其降级为版本1
yum downgrade A B
试图安装与package C-2.0
有文件冲突的package B-1.0
。
yum downgrade A B C
不能工作,因为Package C
没有旧版本。
是否有一个命令可以擦除新包(package C-2.0
)并降低包A和B的等级?
发布于 2016-04-27 13:01:04
如果您升级了几个包,然后只想降低这两个包的级别,那么就不能这样做。不只是使用yum (除非您使用-nodeps和临时中断点)。有高水平的工具,如RH卫星,可以做到这一点。
如果您只是在单独的事务中升级,那么您可以运行:
yum history list
yum history undo <ID>
或
yum history undo last
它会回滚那个事务。也就是说,在你的例子中,降低了这些包的等级。有关历史命令的详细信息,请参阅yum手册页。
发布于 2016-04-28 08:58:21
现在可能为时已晚,因为您已经发布了A-2.0和B-2.0包,但是您应该做的事情(如果您可以删除A-2.0和B-2.0包,您仍然可以这样做):
在A-2.0和B-2.0的规范文件中添加:Requires: C
这具有多个优点,您可以搜索(以及更多):
然而:
有一个替代,用于我的项目:我使用一个
(我使用的是一个分支,它有一个不稳定的元包正在准备下一个版本:meta: Requires,B)
发布于 2018-01-22 13:27:24
您可以使用yum在单个事务中执行所有操作之前编写多个操作。
在您的情况下,您可以使用以下方法:
yum shell
yum downgrade A B
yum remove C
run
https://stackoverflow.com/questions/36856515
复制相似问题