1. 程式人生 > 其它 >使用yum來下載RPM包而不進行安裝

使用yum來下載RPM包而不進行安裝

https://www.cnblogs.com/wangmo/p/7205528.html

https://blog.csdn.net/qq_41944882/article/details/105937472

預設情況下,下載的包會被儲存到當前目錄下,與downloadonly的預設目錄不同,而且使用該命令時需要root許可權,因為在下載過程中會更新包索引檔案,此外不會下在任何依賴的包。
如果需要下載到指定目錄並且解決依賴,可以使用下面加引數的命令:
語法:yumdownloader 軟體名 --resolve --destdir=目錄名
————————————————
使用yumdownloader下載rpm包及依賴到指定目錄

[root@loaclhost yumdownload]# yumdownloader tomcat --resolve --destdir=./tomcat/

1、

yum是基於Red Hat的系統(如CentOS、Fedora、RHEl)上的預設包管理器。使用yum,你可以安裝或者更新一個RPM包,並且他會自動解決包依賴關係。但是如果你只想將一個RPM包下載到你的系統上該怎麼辦呢? 例如,你可能想要獲取一些RPM包在以後使用,或者將他們安裝在另外的機器上。

這裡說明了如何從yum倉庫上下載一個RPM包。

方法一:yum

yum命令本身就可以用來下載一個RPM包,標準的yum命令提供了--downloadonly(只下載)的選項來達到這個目的。

  1. $sudoyuminstall--downloadonly<package-name>

預設情況下,一個下載的RPM包會儲存在下面的目錄中:

  1. /var/cache/yum/x86_64/[centos/fedora-version]/[repository]/packages

以上的[repository]表示下載包的來源倉庫的名稱(例如:base、fedora、updates)

如果你想要將一個包下載到一個指定的目錄(如/tmp):

  1. $sudoyuminstall--downloadonly--downloaddir=/tmp<package-name>

注意,如果下載的包包含了任何沒有滿足的依賴關係,yum將會把所有的依賴關係包下載,但是都不會被安裝。

另外一個重要的事情是,在CentOS/RHEL 6或更早期的版本中,你需要安裝一個單獨yum外掛(名稱為 yum-plugin-downloadonly)才能使用--downloadonly命令選項:

  1. $sudoyuminstallyum-plugin-downloadonly

如果沒有該外掛,你會在使用yum時得到以下錯誤:

  1. Commandlineerror:nosuchoption:--downloadonly

方法二: Yumdownloader

另外一個下載RPM包的方法就是通過一個專門的包下載工具--yumdownloader。 這個工具是yum工具包(包含了用來進行yum包管理的幫助工具套件)的子集。

  1. $sudoyuminstallyum-utils

下載一個RPM包:

  1. $sudoyumdownloader<package-name>

下載的包會被儲存在當前目錄中。你需要使用root許可權,因為yumdownloader會在下載過程中更新包索引檔案。與yum命令不同的是,任何依賴包不會被下載。

下載lsof示例:

yumdownloader lsof --resolve --destdir=/data/mydepot/  #resolve下載依賴

http://ask.xmodulo.com/yum-download-rpm-package.html