如何在忽略 "what requires it" 但考虑 "what it requires" 的情况下强制删除 rpm

how to force removing rpm ignoring "what requires it" but considering "what it requires"

例如,rpm A需要B1,B2等...,B需要C1,C2等...

现在我需要强制删除 B1 和 B1 要求引入的所有包。所以 "B1 is required by A" 这个事实需要忽略,但是 "B1 requires C1, C2, etc..." 需要考虑。这意味着如果 C1 仅被 B1 需要,则同时将其删除。但是如果C1是别人需要的,就保留吧。

如果使用rpm -e --nodeps,只会删除B1,留下它引入的包。另一方面,使用yum autoremove无法删除B1,因为A需要它。那么有没有解决方案可以同时满足这两个要求?

不行,没办法

除非您想同时安装 B2,它提供了 A 所需要的。在那种情况下:

dnf swap -- install B2 -- remove B1

它也适用于 yum。