概述
面對(duì)無法聯(lián)網(wǎng)的centos系統(tǒng),安裝rpm軟件包是一個(gè)比較耗時(shí)的工作,尤其是那些包含很多依賴的軟件包,如果用rpm命令安裝,可以說是一個(gè)噩夢(mèng)。這里根據(jù)個(gè)人實(shí)踐發(fā)布一個(gè)比較完整方便的解決方案。(注:本方案在centos6.564bit測試可用)
具體方案
基本環(huán)境介紹
目標(biāo)操作系統(tǒng):centos6.564bit,下稱“目標(biāo)機(jī)”(無法聯(lián)網(wǎng)用yum安裝)
本地環(huán)境:在VMware下安裝的純凈centos6.564bit,下稱“虛擬機(jī)”(可以聯(lián)網(wǎng)用yum下載安裝包)
本方案基本思路是在一個(gè)可以聯(lián)網(wǎng)的系統(tǒng)中下載rpm安裝包,然后傳到無法聯(lián)網(wǎng)的目標(biāo)操作系統(tǒng),建立安裝源,進(jìn)行安裝。為了減少不必要的麻煩,在本地用虛擬機(jī)安裝一個(gè)和目標(biāo)操作系統(tǒng)一模一樣的但是沒有安裝任何額外軟件的系統(tǒng),用于下載各種安裝包和依賴包。
配置本地環(huán)境
在虛擬機(jī)內(nèi)配置yum只下載RPM包而不安裝,這里要使用–downloadonly選項(xiàng),需要先安裝yum-plugin-downloadonly。
1
|
# yum install yum-plugin-downloadonly |
在本地環(huán)境下載rpm安裝包
1
|
# yum install --downloadonly --downloaddir=/tmp RPM_Name |
/tmp為指定下載的目錄,RPM_Name為目標(biāo)軟件。
yum–downloadonly會(huì)只下載RPM包不安裝,同時(shí)會(huì)把依賴的包都下載下來,注意如虛擬機(jī)已經(jīng)安裝了依賴包,則不會(huì)下載,因此務(wù)必確保虛擬機(jī)的純凈(如果有方案可以下載已經(jīng)有的依賴包,歡迎告知)。
需要說明的是,為了在目標(biāo)機(jī)構(gòu)建軟件源,createrepo是必不可少的模塊,因此需要在虛擬機(jī)上下載createrepo相關(guān)模塊。
1
|
# yum install --downloadonly --downloaddir=/tmp createrepo |
一般會(huì)下載三個(gè)包,一個(gè)是createrepo,另外兩個(gè)是依賴包。
上傳rpm安裝包到目標(biāo)機(jī)
采用scp或者pscp.exe(Windows下)等方式將rpm安裝包文件上傳到目標(biāo)機(jī),并修改權(quán)限為可執(zhí)行(chmod755RPM_Name)。
在目標(biāo)機(jī)構(gòu)建本地軟件源
安裝createrepo
在目標(biāo)機(jī)安裝createrepo:
1
2
3
|
# rpm -ivh deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm # rpm -ivh python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm # rpm -ivh createrepo-0.9.9-24.el6.noarch.rpm |
createrepo構(gòu)建本地軟件源
假設(shè)安裝包在目標(biāo)機(jī)的/home/user/rpms/目錄下。
1
|
# createrepo /home/user/rpms |
修改yum軟件源
移除現(xiàn)有的軟件源
1
|
# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bk |
開啟本地軟件源
1
|
# vim /etc/yum.repos.d/CentOS-Media.repo |
在baseurl增加一行:
1
|
=file:////home/user/rpms/ |
然后修改: enabled=1
這樣就可以使yum采用本地源安裝軟件。
在目標(biāo)機(jī)安裝目標(biāo)軟件
使用yum正常安裝軟件即可。
1
|
# yum install demo |
如果用的是純凈的虛擬機(jī)環(huán)境,并且和目標(biāo)機(jī)保持一致,那么依賴包就會(huì)都安裝,yum安裝就會(huì)很順利。除非個(gè)別包會(huì)有依賴沖突,A依賴B,B又依賴A,導(dǎo)致無法安裝,此時(shí)可以用rpm命令強(qiáng)制安裝其中一個(gè),再用yum安裝軟件即可。
1
|
# rpm -ivh demo.rpm --nodeps --force |
總結(jié)
以上就是本文關(guān)于yum安裝本地rpm軟件方案詳解的全部內(nèi)容,希望對(duì)大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:
10 個(gè)超級(jí)有趣的 Linux 終端游戲分享
關(guān)于Linux系統(tǒng),你可能還不知道的七件事
如有不足之處,歡迎留言指出。感謝朋友們對(duì)本站的支持!
原文鏈接:http://blog.csdn.net/lanjianhun/article/details/69360406