了解 YUM 更新錯誤...需要、刪除、更新

了解 YUM 更新錯誤...需要、刪除、更新

RHEL 7.6,使用相同線上系統的更新來管理離線系統。我在離線系統上創建了一個本地存儲庫,並且運行yum update良好......直到。

.
.
.
Found and removing 0 unneeded dependencies

Error: Package: libkadm5-1.15.1.1-34.el7.x86_64 (@dvd)
    Requires: krb5-libs(x86-64) = 1.15.1-34.el7
    Removing: krb5-libs-1.15.1-34.el7.x86_64 (@anaconda/7.6)
       krb5-libs(x86-64) = 1.15.1-34.el7
    Updated by: krb5-libs-1.15.1-37.el7_6.x86_64 (local)
       krb5-libs(x86-64) = 1.15.1-37.el7_6

我也遇到同樣的錯誤...

  • 關於 krb5-devel-1.15.1-37.el7_6.x86_64
  • 需要 1.15.1-34.el7
  • 刪除 1.15.1-34.el7
  • 更新於 1.15.1-37.el7_6

並且 foropenssl-devel但具有不同的版本號。我不明白的是,在離線系統上完成的任何事情都在線上系統上成功完成,這是如何發生的。那麼為什麼會出現版本問題,以及如何修正它?

答案1

您有一個套件 ,libkadm5需要特定版本的krb5-libs( krb5-libs(x86-64) = 1.15.1-34.el7)。

您正在運行一個更新過程,想要更新krb5-libs到 version 1.15.1-37.el7_6,但這會破壞包,libkadm5因為不再具有krb5-libs它想要的確切版本。未執行更新,因為它無法解決該依賴性衝突。

正確的解決方案是確保libkadm5-1.15.1-37.el7_6您的 YUM 儲存庫中可用(應位於updatesEL 7.6 的儲存庫中)。這應該可以讓krb5-libs軟體包乾淨地更新。

至於為什麼會發生這種情況,我不確定,但可能與相關套件的版本控制有關。仔細查看您遇到問題的軟體包libkadm5-1.15.1.1-34.el7.x86_64,與您需要的軟體包進行比較,libkadm5-1.15.1-37.el7_6您會發現衝突的軟體包.1在版本中有一個額外的內容,這可能會導致 YUM 的更新演算法失效(即 YUM 無法確定這libkadm5-1.15.1-37.el7_6是一個更高的版本,libkadm5-1.15.1.1-34.el7.x86_64因為.1,所以它沒有被選擇更新)。如果是這種情況,您可能需要透過刪除libkadm5-1.15.1.1-34.el7.x86_64並替換為 來手動解決問題libkadm5-1.15.1-37.el7_6

相關內容