Yum

離線安裝和解決舊版本包的依賴項

  • July 8, 2015

我必須在 RHEL 6 伺服器上安裝一個包(我們稱之為foobar),它有一些非常嚴格的限制:

  1. 由於安全原因,伺服器無法訪問 Internet
  2. 它缺少很多包,例如缺少 C 編譯器
  3. 要安裝的 foobar 不是最新版本,而是以前的版本

最大的問題是解決依賴關係。由於第 3 點,我不能簡單地yumdownloader --resolve foobar-3.1.3-1在連接 Internet 的機器上執行以獲取 RPM,將它們傳輸到伺服器然後進行本地安裝:AFAIKyum僅適用於最新的軟體包版本。

此外,由於第 2 點,獲取 foobar 包的程式碼源並對其進行編譯不是一種選擇。

由於答案可能會引起其他人的興趣,以下是我在放寬約束 #3 後解決問題的方法。

我在另一台機器上做了 RHEL 6 的最小安裝。然後我通過 模擬了 foobar 的安裝yum,獲得了依賴項列表,並編寫了一個腳本來yumdownloader獲取所有包。最後,我將 RPM 打包到本地儲存庫中並將其傳輸到伺服器。之後剩下要做的就是yum install foobar在伺服器上執行。

引用自:https://unix.stackexchange.com/questions/213282