我们有 rhel 服务器 7.6 版本
我试图删除以下 rpm 但没有删除rpm 依赖项
但我得到
rpm -e --nodeps sshpass
error: "sshpass" specifies multiple packages:
sshpass-1.06-2.el7.x86_64
sshpass-1.05-5.el7.x86_64
我也尝试(但这是无效的选项)
yum remove --noautoremove sshpass -y
Loaded plugins: langpacks
Usage: yum [options] COMMAND
List of Commands:
还有其他想法吗?
答案1
您可以指定版本:
rpm -e --nodeps sshpass-1.05-5 sshpass-1.06-2
答案2
因此,首先,您可能不应该陷入 RPM 数据库中存在同一 RPM 的多个实例的情况,就像这里的情况一样。它要么是更新事务中断的结果,要么是先前使用的结果--no-deps
。最后,这些文件仅在系统上出现一次。
正如 Stephen 之前回答的那样,您可以简单地扩展您的rpm -e --nodeps
论点以包括 RPM 版本和发行版。
如果您不知道安装的确切版本,只需运行
rpm -q sshpass
在干净的 RPM 数据库上,这只会输出一个已安装的 RPM 的名称-版本-发行版-架构。在你的情况下,这应该给出两行而不是一行。
从这里开始,如何删除同时安装的任意数量的 RPM 应该是非常明显的。多种方式中的一个例子:
rpm -e --nodeps $(rpm -q sshpass)