Yum

yum 更新,如何使 rpm 包可更新

  • July 27, 2020

需要有關如何使 rpm 包與yum UPDATE. 我有它並且已經與yum INSTALLand一起使用yum ERASE,但是在使用時是否有關於如何使 rpm 包工作的資訊yum UPDATE(要添加什麼程式碼,在什麼文件中,等等……)?

非常感謝

要使其正常工作,您唯一需要做的就是確保 .spec 文件中相同版本的版本號或發布號高於目前安裝的版本。然後,當添加到您的儲存庫並createrepo執行時,yum 將獲取並更新

答案並不像在 repo 中使用更新版本的 RPM 那樣簡單。

在伺服器端和客戶端都有一些事情要做。

伺服器端

  1. 將 RPM 複製到倉庫
  2. cd /path/to/repo(假設 /var/www/html/repo)
  3. sudo createrepo --update . 這將更新 repo 的數據庫以包含新的 RPM
  4. sudo chmod -R ugo+rX /var/www/html/repo/ 這將使新的 RPM 可見

客戶端

  1. sudo yum clean all這將擺脫與 repo 相關的所有記憶體資訊。
  2. sudo yum info rpmname您現在應該看到最新的 rpm 版本可用。
  3. sudo yum -y update rpmname你應該更新了。

我對掩蓋所有這些細節的所有答案(這裡、那里和任何地方)感到非常沮喪。任何經歷創建帶有更新的儲存庫的過程的人都將對其進行測試。測試將如下所示:

伺服器端,將新 RPM 添加到儲存庫,執行 createrepo,更改權限客戶端,yum -y install rpmname。使用者,“很酷,它起作用了。現在讓我們嘗試做和更新。”

伺服器端,添加更新版本的 RPM,執行 createrepo,更改權限客戶端,yum -y 升級 rpmname,“沒有標記為更新的包”使用者,“什麼 #?!@ 我只是按照我在網路,這不起作用!”

在客戶端,yum 將記憶體有關儲存庫的資訊,包括最新的可用版本。下次客戶端執行updateinfo命令時,yum 將不會返回 Internet 並檢查儲存庫。Yum 將使用儲存庫的記憶體版本。

引用自:https://serverfault.com/questions/434392