centos7.5離線安裝rpm包自動解決依賴
當生產(chǎn)環(huán)境由于安全原因處于斷網(wǎng)狀態(tài)的時候闺属。通過本地源的方式,使用yum能夠自動安裝軟件向瓷,并且自動處理好依賴關(guān)系玻淑。
然而該方法最最關(guān)鍵的一個問題是——怎么獲取該軟件及其依賴包,供本地源使用礁扮?
當安裝軟件的依賴包較少的話知举,通過手動的方式瞬沦,一個個查找并下載,也許是一個可以考慮的方案雇锡,而當一個軟件有上百個依賴逛钻、并且依賴上又有依賴,這時候你再試試锰提?
如果真的覺得很無力曙痘,那么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軟件包位置如下圖所示:
這里寫圖片描述
我們還可以指定軟件包的下載路徑。需要加入?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目錄下意乓,如圖所示:
這里寫圖片描述
注:/root/package/nano目錄要先存在樱调。
yumdownloade的安裝和使用
1、安裝yumdownloade
sudo yum install yum-utils -y
2洽瞬、yumdownloade使用
格式:sudo yumdownloader 軟件名本涕,如:
sudo yumdownloader nano
默認情況下,下載的包會被保存在當前目錄中伙窃,我們需要使用root權(quán)限,因為yumdownloader會在下載過程中更新包索引文件样漆。與yum命令不同的是为障,任何依賴包不會被下載。我們可以通過加參數(shù)放祟,使得下載包的過程中同時下載依賴以及自定義下載位置鳍怨,格式為:yumdownloader 軟件名 –resolve –destdir=保存目錄
例如:
sudo yumdownloader httpd --resolve --destdir=/root/package/httpd
查看下載的httpd及其依賴,結(jié)果如圖所示: