无法更新 CentOS 7 - yum 更新失败

无法更新 CentOS 7 - yum 更新失败

我正在尝试运行 yum update,但现在它不起作用...我不知道为什么——这是一个相当通用的设置,只运行基本的网络服务:

[... tons of package updates...]

--> Running transaction check
---> Package libwayland-client.x86_64 0:1.14.0-2.el7 will be installed
---> Package libwayland-server.x86_64 0:1.14.0-2.el7 will be installed
---> Package lz4.x86_64 0:1.7.3-1.el7 will be installed
---> Package systemd-libs.i686 0:219-57.el7 will be an update
--> Processing Dependency: liblz4.so.1 for package: systemd-libs-219-57.el7.i686
--> Finished Dependency Resolution
--> Running transaction check
---> Package kernel.x86_64 0:3.10.0-693.5.2.el7 will be erased
---> Package kernel.x86_64 0:3.10.0-693.11.1.el7 will be erased
---> Package systemd-libs.i686 0:219-57.el7 will be an update
--> Processing Dependency: liblz4.so.1 for package: systemd-libs-219-57.el7.i686
--> Finished Dependency Resolution

Error: Package: systemd-libs-219-57.el7.i686 (base)
         Requires: liblz4.so.1
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

使用yum update --skip-broken不起作用。并且rpm -Va --nofiles --nodigest不执行任何操作。

有人知道如何修复这个问题吗?我根本无法更新服务器,因为它卡在了这一点上。

答案1

以下是我将采取的步骤:

yum list installed | grep liblz4

如果已安装则:

sudo updatedb
locate liblz4.so.1
you should find a file called liblz4.so.1.7.5 or something like that.
copy that file to /usr/lib64
cd /usr/lib64
ln -s liblz4.so.1.7.5 liblz4.so.1
yum update

如果尚未安装,则按如下方式安装:

yum install https://rpmfind.net/linux/centos/7.5.1804/os/x86_64/Packages/lz4-1.7.5-2.el7.x86_64.rpm

然后重复上述步骤。

只要确保如果你的 CPU 架构是 64 位,那么你就安装 64 位包,然后放入文件,/usr/lib64但如果你的 CPU 架构是 32 位,那么你应该安装 32 位包并放入文件/usr/lib

此外,我会尝试删除 liblz 和 systemd-libs,然后尝试再次安装,然后运行yum update

#编辑

根据我们的聊天,我建议您安装以下软件包:

lz4-1.7.5-2.el7.i686.rpm

我相信您的 arch 版本存在一些混淆liblz4.so.1,到目前为止,它似乎解决了您的问题,因为更新过程正在正常运行。

答案2

有同样的问题。我还注意到我有两个相互冲突的包。

Error: Package: systemd-libs-219-57.el7.i686 (base)
       Requires: liblz4.so.1

因此,我进一步查看了 yum 的输出,发现它正在尝试从---> Package systemd-libs.i686 0:219-42.el7_4.4将被更新

所以我做了yum remove systemd-libs.i686

终于帮我修好了。

答案3

看来您正在使用 EPEL 和 CentOS 7 安装。您是否正在镜像 EPEL?您的存储库中是否存在 lz4 包?

https://rpmfind.net/linux/RPM/epel/7/x86_64/Packages/l/lz4-1.7.3-1.el7.x86_64.html

答案4

我遇到了这个问题,这是由于我系统上安装的 google-chrome 软件包发生冲突而引起的。因此,我删除了 google-chrome,问题就解决了。

相关内容