centos7.5離線安裝rpm包自動解決依賴

centos7.5離線安裝rpm包自動解決依賴

當(dāng)生產(chǎn)環(huán)境由于安全原因處于斷網(wǎng)狀態(tài)的時候。通過本地源的方式,使用yum能夠自動安裝軟件,并且自動處理好依賴關(guān)系。
然而該方法最最關(guān)鍵的一個問題是——怎么獲取該軟件及其依賴包,供本地源使用?
當(dāng)安裝軟件的依賴包較少的話,通過手動的方式,一個個查找并下載,也許是一個可以考慮的方案,而當(dāng)一個軟件有上百個依賴、并且依賴上又有依賴,這時候你再試試?
如果真的覺得很無力,那么downloadonly跟yumdownloade絕對是兩個值得嘗試的神器。本文主要介紹downloadonly的使用方法。

yum install yum-plugin-downloadonly
 
[root@linux-node1 ~]# yum install yum-plugin-downloadonly
Loaded plugins: fastestmirror, langpacks
Repository base is listed more than once in the configuration
Repository updates is listed more than once in the configuration
Repository extras is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
Loading mirror speeds from cached hostfile
 * base: mirrors.cn99.com
 * epel: mirrors.#edu.cn
 * extras: mirrors.aliyun.com
 * updates: mirrors.cn99.com
Package yum-3.4.3-158.el7.centos.noarch already installed and latest version
Nothing to do
[root@linux-node1 ~]#
 
 
創(chuàng)建目錄用來緩存rpm包
[root@linux-node1 ~]# mkdir /data/rpm -p
[root@linux-node1 ~]#
 
 
我們還可以指定軟件包的下載路徑。需要加入?yún)?shù)–downloaddir參數(shù)。
格式:yum install –downloadonly –downloaddir= your-dir package-name,如:
 
 
執(zhí)行如下命令
[root@linux-node1 /data/rpms]# yum install --downloadonly --downloaddir=/data/rpm  gem
[root@linux-node1 ~]# cd /data/rpm/
[root@linux-node1 /data/rpm]# ll
total 1012
-rw-r--r-- 1 root root  72560 Mar  5 21:47 ruby-2.0.0.648-33.el7_4.x86_64.rpm
-rw-r--r-- 1 root root  84692 Mar  5 21:47 rubygem-bigdecimal-1.2.0-33.el7_4.x86_64.rpm
-rw-r--r-- 1 root root  55044 Mar  5 21:47 rubygem-io-console-0.4.2-33.el7_4.x86_64.rpm
-rw-r--r-- 1 root root  81180 Mar  5 21:47 rubygem-json-1.7.7-33.el7_4.x86_64.rpm
-rw-r--r-- 1 root root  84160 Mar  5 21:48 rubygem-psych-2.0.0-33.el7_4.x86_64.rpm
-rw-r--r-- 1 root root 329272 Mar  5 21:48 rubygem-rdoc-4.0.0-33.el7_4.noarch.rpm
-rw-r--r-- 1 root root 224400 Mar  5 21:48 rubygems-2.0.14.1-33.el7_4.noarch.rpm
-rw-r--r-- 1 root root  94056 Mar  5 21:48 ruby-irb-2.0.0.648-33.el7_4.noarch.rpm
[root@linux-node1 /data/rpms]#
 
離線安裝本地rpm包
[root@linux-node1 ~]# rsync -a 10.0.3.62:/data/rpm /data/
[root@linux-node1 ~]# cd /data/
[root@linux-node1 /data]# ll
total 4
drwxr-xr-x 2 root root 4096 Aug 20 14:20 rpm
[root@linux-node1 /data]# cd rpm/
[root@linux-node1 /data/rpm]# ll
total 3932
-rw-r--r-- 1 root root   56068 Jan 30  2015 libyaml-0.1.4-11.el7_0.x86_64.rpm
-rw-r--r-- 1 root root   72560 Mar  5 21:47 ruby-2.0.0.648-33.el7_4.x86_64.rpm
-rw-r--r-- 1 root root   84692 Mar  5 21:47 rubygem-bigdecimal-1.2.0-33.el7_4.x86_64.rpm
-rw-r--r-- 1 root root   55044 Mar  5 21:47 rubygem-io-console-0.4.2-33.el7_4.x86_64.rpm
-rw-r--r-- 1 root root   81180 Mar  5 21:47 rubygem-json-1.7.7-33.el7_4.x86_64.rpm
-rw-r--r-- 1 root root   84160 Mar  5 21:48 rubygem-psych-2.0.0-33.el7_4.x86_64.rpm
-rw-r--r-- 1 root root  329272 Mar  5 21:48 rubygem-rdoc-4.0.0-33.el7_4.noarch.rpm
-rw-r--r-- 1 root root  224400 Mar  5 21:48 rubygems-2.0.14.1-33.el7_4.noarch.rpm
-rw-r--r-- 1 root root   94056 Mar  5 21:48 ruby-irb-2.0.0.648-33.el7_4.noarch.rpm
-rw-r--r-- 1 root root 2931216 Mar  5 21:48 ruby-libs-2.0.0.648-33.el7_4.x86_64.rpm
[root@linux-node1 /data/rpm]# yum localinstall *.rpm -y

downloadonly的安裝和使用

1、安裝downloadonly

sudo yum install yum-plugin-downloadonly

2、downloadonly使用
格式:yum install –downloadonly+軟件名稱,如:

sudo yum install --downloadonly nano

默認情況下軟件下載的路徑在/var/cache/yum/x86_64/7/base/packages/下。如:上面命令下載的nano軟件包位置如下圖所示:


圖片.png

這里寫圖片描述
我們還可以指定軟件包的下載路徑。需要加入?yún)?shù)–downloaddir參數(shù)。
格式:yum install –downloadonly –downloaddir= your-dir package-name,如:

sudo yum install --downloadonly --downloaddir=/root/package/nano nano

此時,下載的nano包存放在/root/package/nano目錄下,如圖所示:


圖片.png

這里寫圖片描述
注:/root/package/nano目錄要先存在。
yumdownloade的安裝和使用
1、安裝yumdownloade

sudo yum install yum-utils -y

2、yumdownloade使用
格式:sudo yumdownloader 軟件名,如:

sudo yumdownloader nano 

默認情況下,下載的包會被保存在當(dāng)前目錄中,我們需要使用root權(quán)限,因為yumdownloader會在下載過程中更新包索引文件。與yum命令不同的是,任何依賴包不會被下載。我們可以通過加參數(shù),使得下載包的過程中同時下載依賴以及自定義下載位置,格式為:yumdownloader 軟件名 –resolve –destdir=保存目錄
例如:

sudo yumdownloader httpd --resolve --destdir=/root/package/httpd 

查看下載的httpd及其依賴,結(jié)果如圖所示:


圖片.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容