Centos 7:yum 更新错误 glib2 更新错误

Centos 7:yum 更新错误 glib2 更新错误

我尝试在我的 CentOS 机器上运行更新,但遇到了问题。我上次运行更新是在 2018 年 1 月,然后是昨天,2018 年 6 月 19 日。

# yum update
...
--> Finished Dependency Resolution
Error: Package: 1:NetworkManager-1.10.2-14.el7_5.x86_64 (updates)
           Requires: glib2 >= 2.54.2
           Installed: glib2-2.50.3-3.el7.x86_64 (@base)
               glib2 = 2.50.3-3.el7
Error: Package: 1:NetworkManager-glib-1.10.2-14.el7_5.x86_64 (updates)
           Requires: libdbus-1.so.3(LIBDBUS_1_3)(64bit)
Error: Package: python2-ipalib-4.5.4-10.el7.centos.1.noarch (updates)
           Requires: python-netaddr >= 0.7.5-9
           Installed: python-netaddr-0.7.5-7.el7.noarch (@anaconda)
               python-netaddr = 0.7.5-7.el7
Error: Package: gtk3-3.22.26-4.el7_5.x86_64 (updates)
           Requires: libwayland-client(x86-64) >= 1.9.91
           Installing: libwayland-client-1.5.0-4.el7.nux.x86_64 (nux-dextop)
               libwayland-client(x86-64) = 1.5.0-4.el7.nux
Error: Package: libvirt-daemon-3.9.0-14.el7_5.5.x86_64 (updates)
           Requires: libdbus-1.so.3(LIBDBUS_1_3)(64bit)
Error: Package: selinux-policy-targeted-3.13.1-192.el7_5.3.noarch (updates)
           Requires: policycoreutils >= 2.5-18
           Installed: policycoreutils-2.5-17.1.el7.x86_64 (@base)
               policycoreutils = 2.5-17.1.el7
Error: Package: xorgxrdp-0.2.6-2.el7.x86_64 (epel)
           Requires: xorg-x11-server-Xorg(x86-64) = 1.19.5
           Installed: xorg-x11-server-Xorg-1.19.3-11.el7.x86_64 (@base)
               xorg-x11-server-Xorg(x86-64) = 1.19.3-11.el7
Error: Package: libvirt-daemon-driver-nwfilter-3.9.0-14.el7_5.5.x86_64 (updates)
           Requires: libdbus-1.so.3(LIBDBUS_1_3)(64bit)
Error: Package: gtk3-3.22.26-4.el7_5.x86_64 (updates)
           Requires: libwayland-cursor(x86-64) >= 1.9.91
           Installing: libwayland-cursor-1.5.0-4.el7.nux.x86_64 (nux-dextop)
               libwayland-cursor(x86-64) = 1.5.0-4.el7.nux
Error: Package: libvirt-daemon-driver-network-3.9.0-14.el7_5.5.x86_64 (updates)
           Requires: libdbus-1.so.3(LIBDBUS_1_3)(64bit)
Error: Package: gtk3-3.22.26-4.el7_5.x86_64 (updates)
           Requires: libwayland-egl.so.1()(64bit)
Error: Package: openscap-1.2.16-8.el7_5.x86_64 (updates)
           Requires: libdbus-1.so.3(LIBDBUS_1_3)(64bit)
Error: Package: selinux-policy-3.13.1-192.el7_5.3.noarch (updates)
           Requires: policycoreutils >= 2.5-18
           Installed: policycoreutils-2.5-17.1.el7.x86_64 (@base)
               policycoreutils = 2.5-17.1.el7
Error: Package: gtk3-3.22.26-4.el7_5.x86_64 (updates)
           Requires: libwayland-cursor(x86-64) >= 1.9.91
           Available: libwayland-cursor-1.5.0-4.el7.nux.x86_64 (nux-dextop)
               libwayland-cursor(x86-64) = 1.5.0-4.el7.nux
Error: Package: libvirt-libs-3.9.0-14.el7_5.5.x86_64 (updates)
           Requires: libdbus-1.so.3(LIBDBUS_1_3)(64bit)
Error: Package: gtk3-3.22.26-4.el7_5.x86_64 (updates)
           Requires: libwayland-client(x86-64) >= 1.9.91
           Available: libwayland-client-1.5.0-4.el7.nux.x86_64 (nux-dextop)
               libwayland-client(x86-64) = 1.5.0-4.el7.nux
Error: Package: certmonger-0.78.4-3.el7_5.1.x86_64 (updates)
           Requires: libdbus-1.so.3(LIBDBUS_1_3)(64bit)

如果我手动更新 glib2,我会出现第一个错误:

[root@datamover102 .hts]# yum install glib2.x86_64
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.oit.uci.edu
 * epel: mirrors.develooper.com
 * extras: mirror.sfo12.us.leaseweb.net
 * nux-dextop: mirror.li.nux.ro
 * updates: repos.lax.quadranet.com
Package glib2-2.50.3-3.el7.x86_64 already installed and latest version
Nothing to do

Yum 认为 glib2 是最新版本,同时又说 2.54 是最低需要的版本。根据 Google 快速搜索,我相信 2.56 是最新版本。

我尝试过yum remove glib2,但没有任何进展。我也尝试过package-clean --dupes,这是我读过的一篇文章中推荐的解决方案。其输出什么也没有。

还有其他错误。

这是软件更新 GUI 的屏幕截图,视图更好。

CentOS 7 软件更新显示 yum 更新问题

更新1

第一个建议的答案不起作用,这是输出。

[root@datamover102 .hts]# yum install glib2-2.54.2.x86_64
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.oit.uci.edu
 * epel: mirrors.develooper.com
 * extras: mirror.sfo12.us.leaseweb.net
 * nux-dextop: mirror.li.nux.ro
 * updates: repos.lax.quadranet.com
No package glib2-2.54.2.x86_64 available.
Error: Nothing to do
[root@datamover102 .hts]# 

更新2

我有几台 CentOS 7 机器,其中两台需要更新,并且自 2018 年 1 月以来就没有更新过。第一台机器 101 更新完美,没有问题,而第二台机器 102 出现了问题。我刚刚决定列出一个清单,事实证明这很有趣,请注意使用的不同存储库。

`BAD`
[root@datamover102 yum.repos.d]# yum list glib2
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.oit.uci.edu
 * epel: mirrors.develooper.com
 * extras: mirror.sfo12.us.leaseweb.net
 * nux-dextop: mirror.li.nux.ro
 * updates: repos.lax.quadranet.com
Installed Packages
glib2.x86_64                                   2.50.3-3.el7                                    @base
Available Packages
glib2.i686                                     2.50.3-3.el7                                    base 

GOOD
[root@datamover101 yum.repos.d]# yum list glib2
Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: centos-distro.cavecreek.net
 * epel: mirrors.develooper.com
 * extras: mirror.sfo12.us.leaseweb.net
 * nux-dextop: mirror.li.nux.ro
 * updates: centos.mirror.ndchost.com
Installed Packages
glib2.x86_64                                   2.54.2-2.el7                                    @base
Available Packages
glib2.i686                                     2.54.2-2.el7                                    base 
[root@datamover101 yum.repos.d]# 

基本上都是坏机base: mirrors.oit.uci.edu作为基础,好机centos-distro.cavecreek.net作为基础。

答案是让坏机器不使用mirrors.oit.uci.edu作为基础。这是一个在两台机器上都匹配的列表。

[root@datamover102 yum.repos.d]# ls -la
total 56
drwxr-xr-x.   2 root root  252 Jun 20 16:38 .
drwxr-xr-x. 144 root root 8192 Jun 20 15:33 ..
-rw-r--r--    1 root root 1664 May 17 06:53 CentOS-Base.repo
-rw-r--r--.   1 root root 1309 Sep 27  2017 CentOS-CR.repo
-rw-r--r--    1 root root  649 May 17 06:53 CentOS-Debuginfo.repo
-rw-r--r--    1 root root  314 May 17 06:53 CentOS-fasttrack.repo
-rw-r--r--    1 root root  630 May 17 06:53 CentOS-Media.repo
-rw-r--r--    1 root root 1331 May 17 06:53 CentOS-Sources.repo
-rw-r--r--    1 root root 4768 May 17 06:53 CentOS-Vault.repo
-rw-r--r--    1 root root  951 Oct  2  2017 epel.repo
-rw-r--r--    1 root root 1050 Oct  2  2017 epel-testing.repo
-rw-r--r--.   1 root root  477 Jul 31  2014 nux-dextop.repo

答案1

我做了更多研究并发现这一页。该文章的相关部分是这样的:

8.1. Disabling or Removing Package Sources
Set enable=0 in a definition file to prevent yum from using that repository. The yum utility ignores any definition file with this setting.

To completely remove access to a repository:

Delete the relevant file from /etc/yum.repos.d/.

Delete the cache directory from /var/cache/yum/.

我按照将目录从 101 和 102 下载到我的 Windows 机器的方式,通过enabled = 0设置进行了第一步。 Araxis Merge 发现了这一差异。CentOS-CR.repo/etc/yum.repos.d

此后重新启动计算机并没有解决问题,但是删除目录x8x_64确实/var/cache/yum解决了问题。然后我做了一个:

# yum update glib2.x86_64 (a success to 2.54)

接下来是:

# yum update

答案2

您是否尝试过强制它安装特定版本的 glib2 ?

它可能不会起作用,但会让您了解出了什么问题。

尝试yum install glib2-2.54.2.x86_64将输出回复给我。

可能想yum remove glib2在安装新版本之前尝试一下。

相关内容