Yum在AWS上更新了缺less需求和重复的sendmail问题

我正在运行AWS VM,并尝试:

sudo yum update 

结果:

 Error: Protected multilib versions: sendmail-8.14.4-8.12.amzn1.x86_64 != sendmail-8.14.4-7.9.amzn1.i386 You could try using --skip-broken to work around the problem ** Found 2 pre-existing rpmdb problem(s), 'yum check' output follows: kernel-2.6.34.7-56.40.amzn1.x86_64 has missing requires of mkinitrd sendmail-8.14.4-8.11.amzn1.x86_64 is a duplicate with sendmail-8.14.4-7.9.amzn1.i386 

我读其他地方试试这个:

 sudo yum --exclude=kernel* update 

但是同样的结果。

这是我想升级的生产服务器,所以我必须格外小心。 我不是那个准备的人。 看起来我使用红帽4.4.6-3的亚马逊版本。

任何build议如何解决这个问题?

当您安装同一个库的32位(.i686)和64位(x86_64)版本时,它们必须是相同的版本。 如果您查看上面发布的错误消息,则会看到版本不一样(“!=”部分表示“不等于”)。

使用以下命令来修复错误,

使用包清理删除重复。

 package-cleanup --dupes package-cleanup --cleandupes 

清除yumcaching,

 yum clean all 

然后最后更新系统,

 yum update 

这篇文章有更多的细节, Fedora论坛和红帽百胜参考

在这种情况下,使用yum distro-sync而不是yum update来修复软件包版本不匹配。 这样可以在必要时将软件包降级以匹配存储库中的版本。

你可以尝试下面的这将确保你从存储库下载最新版本。

  1. 确保/etc/yum.conf中的“releasever”被设置为“latest”

  2. sudo yum干净一切

  3. sudo yum更新