那么,我该如何处理 yum check 的输出呢?

那么,我该如何处理 yum check 的输出呢?

当我运行 yum check(或通常尝试使用 yum 更新我的系统)时,我得到以下信息:

# yum check
Loaded plugins: langpacks, presto, priorities, refresh-packagekit
krb5-devel-1.10.2-12.fc17.x86_64 has missing requires of keyutils-libs-devel
krb5-devel-1.10.2-12.fc17.x86_64 has missing requires of libselinux-devel
libdb-5.3.21-3.fc18.x86_64 is a duplicate with libdb-5.2.36-5.fc17.x86_64
1:openssl-1.0.0k-1.fc17.x86_64 is obsoleted by 1:openssl-libs-1.0.1c-7.fc18.x86_64
1:openssl-1.0.1c-7.fc18.x86_64 is a duplicate with 1:openssl-1.0.0k-1.fc17.x86_64
rpm-4.10.1-3.fc18.x86_64 is a duplicate with rpm-4.9.1.3-8.fc17.x86_64
rpm-build-libs-4.10.1-3.fc18.x86_64 is a duplicate with rpm-build-libs-4.9.1.3-8.fc17.x86_64
rpm-libs-4.10.1-3.fc18.x86_64 is a duplicate with rpm-libs-4.9.1.3-8.fc17.x86_64
rpm-python-4.10.1-3.fc18.x86_64 is a duplicate with rpm-python-4.9.1.3-8.fc17.x86_64
sqlite-3.7.11-3.fc17.x86_64 is a duplicate with sqlite-3.7.11-2.fc17.x86_64
Error: check all

特别是对于重复项,如果我尝试卸载它们,则会卸载一堆其他包(对于“与”重复的两侧的每个包)。我该如何解决这个问题?

至于缺少的要求,我认为我可以安装缺少的要求。

更新:我能够解决其中一些错误:

  1. sqlite 重复项已通过以下方式解决# yum reinstall sqlite-3.7.11-3.fc17.x86_64
  2. 只需使用 yum 安装即可解决缺少的需求。
  3. 尝试通过重新安装解决 openssl 问题没有成功:

    # yum reinstall openssl
    Loaded plugins: langpacks, presto, priorities, refresh-packagekit
    Setting up Reinstall Process
    Resolving Dependencies
    --> Running transaction check
    ---> Package openssl.x86_64 1:1.0.0k-1.fc17 will be reinstalled
    --> Finished Dependency Resolution
    Error:  Multilib version problems found. This often means that the root
       cause is something else and multilib version checking is just
       pointing out that there is a problem. Eg.:
    
     1. You have an upgrade for openssl which is missing some
        dependency that another package requires. Yum is trying to
        solve this by installing an older version of openssl of the
        different architecture. If you exclude the bad architecture
        yum will tell you what the root cause is (which package
        requires what). You can try redoing the upgrade with
        --exclude openssl.otherarch ... this should give you an error
        message showing the root cause of the problem.
    
     2. You have multiple architectures of openssl installed, but
        yum can only see an upgrade for one of those arcitectures.
        If you don't want/need both architectures anymore then you
        can remove the one with the missing update and everything
        will work.
    
     3. You have duplicate versions of openssl installed already.
        You can use "yum check" to get yum show these errors.
    
       ...you can also use --setopt=protected_multilib=false to remove
       this checking, however this is almost never the correct thing to
       do as something else is very likely to go wrong (often causing
       much more problems).
    
       Protected multilib versions: 1:openssl-1.0.0k-1.fc17.x86_64 != 1:openssl-1.0.1c-7.fc18.x86_64
    

更新:这是rpm -qa --dupes发出的内容:

# rpm -qa --dupes
gpg-pubkey.(none)
kernel-devel.x86_64
kernel.x86_64
libdb.x86_64
openssl.x86_64
rpm-build-libs.x86_64
rpm-libs.x86_64
rpm-python.x86_64
rpm.x86_64

更多更新:

# rpm -q --qf '%{name}-%{version}-%{release}.%{arch}\n' libdb openssl rpm{,-{libs,python,build-libs}}
libdb-5.2.36-5.fc17.x86_64
libdb-5.3.21-3.fc18.x86_64
openssl-1.0.1c-7.fc18.x86_64
openssl-1.0.0k-1.fc17.x86_64
rpm-4.9.1.3-8.fc17.x86_64
rpm-4.10.1-3.fc18.x86_64
rpm-libs-4.9.1.3-8.fc17.x86_64
rpm-libs-4.10.1-3.fc18.x86_64
rpm-python-4.10.1-3.fc18.x86_64
rpm-python-4.9.1.3-8.fc17.x86_64
rpm-build-libs-4.10.1-3.fc18.x86_64
rpm-build-libs-4.9.1.3-8.fc17.x86_64

相关内容