無法從多個 yum 儲存庫取得最新版本的軟體包

無法從多個 yum 儲存庫取得最新版本的軟體包

我的 CentOS 8.1.1911 中有兩個 rpm 儲存庫。詳情如下:

# virt-1.repo
[appstream]
name=CentOS Linux 8-stream - AppStream
baseurl=http://mirrors.ustc.edu.cn/centos/8-stream/AppStream/$basearch/os/
gpgcheck=0
enabled=1
# virt-2.repo
[centos-advanced-virtualization]
name=CentOS Linux 8-stream - Advanced Virtualization
baseurl=http://mirrors.ustc.edu.cn/centos/8-stream/virt/$basearch/advancedvirt-common/
gpgcheck=0
enabled=1

這兩個存儲庫都包含該軟體包libvirt,並且存儲庫中有較新的軟體包centos-advanced-virtualization。我的操作如下:

  1. yum clean all && yum makecache
  2. yum list libvirt --showduplicates,但我從appstream
# yum list libvirt --showduplicates
Last metadata expiration check: 0:00:18 ago on Sun 26 Sep 2021 05:22:42 PM CST.
Available Packages
libvirt.x86_64                                                 6.0.0-35.module_el8.5.0+746+bbd5d70c                                                 appstream
libvirt.x86_64                                                 6.0.0-36.module_el8.5.0+821+97472045                                                 appstream
  1. 刪除應用程式串流,mv virt-1.repo virt-1.repo.bak && yum makecache
  2. yum list libvirt --showduplicates,我可以從centos-advanced-virtualization
# yum list libvirt --showduplicates
Last metadata expiration check: 0:00:30 ago on Sun 26 Sep 2021 05:26:08 PM CST.
Available Packages
libvirt.x86_64                                                  7.0.0-9.el8s                                                   centos-advanced-virtualization
libvirt.x86_64                                                  7.0.0-13.el8s                                                  centos-advanced-virtualization
libvirt.x86_64                                                  7.0.0-14.el8s                                                  centos-advanced-virtualization
libvirt.x86_64                                                  7.4.0-1.el8s                                                   centos-advanced-virtualization
libvirt.x86_64                                                  7.5.0-1.el8s                                                   centos-advanced-virtualization
libvirt.x86_64                                                  7.6.0-2.el8s                                                   centos-advanced-virtualization

那麼,為什麼我不能一開始就獲得較新的呢?我錯過了什麼?

答案1

我解決了這個問題這裡

DNF 希望從 AppStream 安裝 MariaDB 的主要原因是它偏好模組化軟體包。這意味著,如果特定的軟體包(名稱)或虛擬提供是模組的一部分,並且其他存儲庫中存在具有相同名稱的軟體包,但它們不是該模組的一部分,那麼 DNF 將始終希望從模組化存儲庫。

所以,這就是為什麼我無法獲得最新版本的libvirt軟體包。更新我的virt-2.repo如下後,一切都很好:

# virt-2.repo
[centos-advanced-virtualization]
name=CentOS Linux 8-stream - Advanced Virtualization
baseurl=http://mirrors.ustc.edu.cn/centos/8-stream/virt/$basearch/advancedvirt-common/
gpgcheck=0
enabled=1
module_hotfixes=1

我可以獲得最新版本libvirt

# yum list libvirt --showduplicates
Last metadata expiration check: 0:45:51 ago on Mon 27 Sep 2021 06:53:12 PM CST.
Available Packages
libvirt.x86_64                                              6.0.0-35.module_el8.5.0+746+bbd5d70c                                               appstream     
libvirt.x86_64                                              6.0.0-36.module_el8.5.0+821+97472045                                               appstream     
libvirt.x86_64                                              7.0.0-9.el8s                                                                       Virtualization
libvirt.x86_64                                              7.0.0-13.el8s                                                                      Virtualization
libvirt.x86_64                                              7.0.0-14.el8s                                                                      Virtualization
libvirt.x86_64                                              7.4.0-1.el8s                                                                       Virtualization
libvirt.x86_64                                              7.5.0-1.el8s                                                                       Virtualization
libvirt.x86_64                                              7.6.0-2.el8s                                                                       Virtualization

相關內容