背景
實際開發中,我們的linux服務器是處理離線狀態的,並不能訪問互聯網。如果此時要在linux上安裝或者升級軟件,就只能通過rpm包的安裝方式。rpm包安裝有一個缺陷,就是不能處理安裝包的依賴問題,這也是為什么在聯網狀態大家都用yum的方式來安裝軟件了,因為yum可以自動解決依賴包問題。
解決思路:有人說就直接用rpm包來安裝,缺少哪個依賴包就去下載依賴包。這樣原則上說是可以的,安裝簡單軟件就可以采用這種方法。不過通常我們安裝的rpm軟件包依賴比較多,不能手動去下載依賴包的,而且很多依賴包找不到。所以此時應該采用yum命令來下載軟件包,同時將其依賴一起下載下來。yum命令有這種功能,只下載安裝包和依賴,但是不安裝。采用這種方式就需要有一台能聯網linux,從能聯網的linux上下載安裝包及其依賴,然后拷貝到離線的服務器上,這樣就可以輕松完成安裝了
此處以升級vsftpd為例(機器為centos7的64位系統,下載的vsftpd為3.0,不同的centos版本會有不同版本的安裝包)
1、下載安裝yum插件下載軟件包及依賴
安裝yumdownloade yum install yum-utils -y 列出能聯網系統的所有可安裝的vsftpd軟件 yum list | grep vsftpd 下載軟件包vsftpd.x86_64及依賴到指定目錄/root/package/httpd yumdownloader vsftpd.x86_64 --resolve --destdir=/root/package/httpd |
2、將指定目錄下的rpm包及其依賴拷貝到離線的服務器安裝
將rpm安裝包集中放在一個文件夾下,rpm可能一個或者多個,不要一個個去安裝rpm,使用同時安裝的命令,此事系統就會正確的安裝軟件包 rpm -ivh --replacefiles *.rpm |
3、恭喜您成功安裝,同樣,對於任何別的軟件都采用這種方式
@轉載請注明出處,thanks!