今天我尝试更新我们的 Amazon Linux 服务器并收到以下错误消息:
$ sudo yum update
---> Package python26-ordereddict.noarch 0:1.1-2.5.amzn1 will be obsoleted
--> Processing Dependency: python26-ordereddict = 1.1 for package: python26-bcdoc-0.16.0-1.9.amzn1.noarch
--> Finished Dependency Resolution
Error: Package: python26-bcdoc-0.16.0-1.9.amzn1.noarch (@amzn-updates)
Requires: python26-ordereddict = 1.1
Removing: python26-ordereddict-1.1-2.5.amzn1.noarch (@amzn-main)
python26-ordereddict = 1.1-2.5.amzn1
Obsoleted By: python26-2.6.9-2.83.amzn1.x86_64 (amzn-updates)
python26-ordereddict = 1.2
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
这是一个 Apache PHP Web 服务器,我们不使用 Python 进行 Web 开发,但 Linux 显然需要它,也许 Apache 使用的某些包需要它 - 不知道!此错误出现在多个服务器上。
问题
- 使用安全吗
sudo yum update --skip-broken
,或者会损坏东西吗? - 做什么
rpm -Va --nofiles --nodigest
以及有什么风险? - 我该如何解决这个明显的依赖性问题?
答案1
该命令是安全的。它会跳过所有依赖关系已损坏的包:
sudo yum update --skip-broken
您可以跳过校验和验证来验证所有包,是的,它是安全的:
rpm -Va --nofiles --nodigest
假设您无法解决此问题,几天后依赖项将出现在存储库中。您也可以向您的发行版供应商报告错误。
答案2
我必须找到相同的包作为 salt-minion 的依赖项。它位于 EPEL 上,因此您可能想要执行类似的操作来设置新存储库。
yum install epel-release-5-4
yum install python26-ordereddict
版本会随着时间的推移而变化 - 确保您获得所需的内容。