试图删除在 Centos 中受保护的 yum

Posted

技术标签:

【中文标题】试图删除在 Centos 中受保护的 yum【英文标题】:Trying to remove yum which is protected in Centos 【发布时间】:2013-03-25 19:25:48 【问题描述】:

好吧,我正在尝试执行以下命令。

yum remove libffi-3.0.9-1.el5.rf.i386

因为我需要那个文件 (?),但是在使用 rvm 安装 ruby​​ 时遇到问题,因为 libffi-devel 是 rvm 的依赖项来安装 ruby​​。

但是它给了我以下错误,当然它不会删除任何东西。

Error: Trying to remove "yum", which is protected
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

我已经尝试过 --skip-broken 并且得到了这个:

Error: Trying to remove "yum", which is protected
 You could try running: rpm -Va --nofiles --nodigest

如您所见,我不是 Linux 专家,但我需要使用 rvm 安装 Ruby,但由于此错误而无法安装,你们中有人知道我做错了什么吗?

谢谢你:)

【问题讨论】:

【参考方案1】:

做我正在寻找的正确方法是:

rpm -e --nodeps PACKAGE

在命令行中。

【讨论】:

非常感谢,现在 yum 根本不起作用。 yum 会警告您,显然这意味着 yum 需要您尝试删除的库。所以不要。因为它会破坏百胜。 和@gomyes 有同样的问题,但是当我更新一个包时(之后通过rpm 安装它),yum 又工作了。所以这可能只用于更新某个包,如果由于某种原因你不能或不会通过yum update更新它。 我遇到了同样的问题,这个答案中的 cmets 让我无法使用这个命令。不过我很绝望,它工作得很好,百胜没有受到影响。 Centos 6.6。 rpm -e --nodeps libffi 然后我用yum install libffi-devel 安装了libffi-devel。 Ruby 然后安装得很好。 superuser.com/questions/841805/… 在我删除 openssl 后,这对我来说破坏了 yum。要修复它,我必须手动下载 openssl rpm 并重新安装。 使用rpm --nodeps 安装或删除软件包可能会导致应用程序行为异常和/或崩溃,并可能导致严重的软件包管理问题,或者可能导致系统故障。 access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/…【参考方案2】:

命令yum remove <package> 删除该包以及任何依赖它的包。

在您的情况下,您正在尝试删除一个包含许多其他软件包的软件包,包括 yum 软件包本身。就好像您运行 yum remove yum,这就是您收到此错误消息的原因。

命令:

rpm -e --nodeps <package>

可用于删除一个包而不删除依赖它的包但这显然会破坏所有这些其他包。

使用 rpm --nodeps 安装或删除软件包可能会导致应用程序行为异常和/或崩溃,并可能导致严重的软件包管理问题,或者可能导致系统故障。

更多详情见https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Deployment_Guide/sec-Removing.html

【讨论】:

以上是关于试图删除在 Centos 中受保护的 yum的主要内容,如果未能解决你的问题,请参考以下文章

c#中受保护和私有保护有啥区别? [复制]

.Net中受保护的内部意味着啥[重复]

firebase 中受保护内容的适当授权规则

c ++中受保护的派生和私有派生有啥区别[重复]

Java 枚举类型中受保护的变量是啥意思? [复制]

python中受保护变量和公共变量有啥区别