1. 程式人生 > >Fedora22新增國內軟體源和本地軟體源

Fedora22新增國內軟體源和本地軟體源

Linux系統和Windows系統一個很大的區別就是軟體安裝方式,windows系統下安軟體,我們去相應的網站下載軟體安裝包離線安裝就可以了。雖然Linux下少數軟體也可以像Windows一樣離線安裝,但是因為Linux系統的軟體之間的依賴性非常強,一個軟體可能依賴好幾個軟體,這樣的話離線安裝就非常不方便了,所以大多數時候都選擇線上安裝。Linux系統線上安裝軟體原理通俗的說就是,把很多軟體放在一個倉庫裡,我們線上安裝的時候,輸入命令,系統會按照軟體名字去這個倉庫裡面尋找,如果需要安裝的軟體依賴另一個軟體,系統會先安裝另外的那個軟體,這樣安裝就非常方便了,只需要輸個命令就搞定了。


Linux軟體倉庫一般都會有官方維護的一個倉庫,還有一些非官方的特定軟體庫,一般只用到官方軟體倉庫就可以了,但是一般官方軟體倉庫網路地址都是國外的,我們國內訪問非常的慢,導致線上安裝軟體下載非常慢。因為這個原因,世界各地都有很多網站都有這個備份的倉庫,這樣使用者訪問當地的備份軟體倉庫速度就非常快了。

不同的Linux發行版會以各種相同或者不同的方式設定這個軟體倉庫即軟體源資訊。fedora的軟體源資訊檔案(*.repo)都是放在 /etc/yum.repos.d 目錄下的。可以通過#ls -l /etc/yum.repos.d 檢視,每個檔案都是包含軟體倉庫資訊的檔案,因為預設的官方軟體源都是國外的,可能網速不是很快,我們可以自己新增國內軟體源或者本地軟體源。下面我們就介紹怎麼配置軟體源。


1. 安裝外掛

我們安裝一個外掛,讓系統自動選擇最快的軟體源。
 
#yum install yum-fastestmirror

這個外掛在以前用yum命令的時候是非常靠譜的,但是fedora22開始yum命令全部重定向為dnf命令了,所以要想在22和之後的版本中使用,需要在dnf配置檔案 /etc/dnf/dnf.conf 後面加一行 fastestmirror=true 。


2. 手動新增國內軟體源

國內的知名linux開源映象站有網易開源映象(http://mirrors.163.com/),搜狐開源映象(http://mirrors.sohu.com/),中科大開源映象(http://mirrors.ustc.edu.cn/),首都線上(http://mirrors.yun-idc.com/)等。我們進入它們的網站,找到fedora,它後面一般會有使用說明help之類的,點進去之後就會告訴你,把一些檔案下載到某個指定的資料夾,你可以按照它的說明操作。下面咱就直接用命令wget下載它的repo檔案了,選擇性的下載其中的某個就可以,不必全部下載。這兩種方法其實效果是一樣的,只是方法不一樣。
 
#cd /etc/yum.repos.d
#wget http://mirrors.163.com/.help/fedora-163.repo
#wget http://mirrors.163.com/.help/fedora-updates-163.repo
#wget http://mirrors.sohu.com/help/fedora-sohu.repo
#wget http://mirrors.sohu.com/help/fedora-updates-sohu.repo
#wget http://lug.ustc.edu.cn/wiki/_export/code/mirrors/help/fedora?codeblock=0
#wget http://lug.ustc.edu.cn/wiki/_export/code/mirrors/help/fedora?codeblock=1
#wget http://mirrors.yun-idc.com/fedora-cds.repo
#wget http://mirrors.yun-idc.com/fedora-updates-cds.repo
#yum makecache(更新快取)

除了示例這幾個網站外,你也可以選擇其他的你訪問比較快的源,比如你所在大學的開源映象站的源。


3. 設定本地軟體源

我們上面設定的是人家網站的軟體倉庫,如果你的電腦現在沒法聯網,又急需安裝某個軟體的話,可以安裝你的系統映象裡的軟體。fedora的DVD映象一般都好幾個G大小,其實裡面大多數裝的都是倉庫裡面的軟體(packages目錄下),可能某些軟體不是最新的,但是我們安裝的時候直接用這些軟體會很方便。

假設是在/home/lemon目錄下,lemon是我的使用者名稱,新建目錄起名為lemon-yum。
 
#mkdir lemon-yum

把光碟Packages目錄下的東西全部複製到剛建立的目錄,fedora22光碟預設是掛載在/run/media/lemon/目錄下的,*補全名稱,也可以在圖形介面下操作。
 
#cp -rv /run/media/lemon/Fedora*/Packages/* ./lemon-yum

如果有就不必安裝了。
 
#yum createrepo

進入軟體目錄。
 
#cd lemon-yum

建立索引檔案,完成之後,此目錄下生成repodata資料夾,儲存索引資訊。
 
#createrepo -v

上面咱說過repo檔案是一個包含軟體倉庫資訊的檔案,現在咱就新建一個repo檔案。下面是用VI編輯器寫一個純文字repo檔案,你也可以使用別的文字編輯器。
 
#cd /etc/yum.repos.d
#vi lemon.repo

repo檔案內容如下:
(點i開始編輯)
 
[Lemon]
name=Lemon Yum repo
baseurl=file:///home/lemon/lemon-yum/
enabled=1
gpgcheck=0

(Esc退出編輯模式,:wq儲存並退出)
 
#yum makecache

完成,可以#ls -l 檢視此目錄下的檔案。
安裝軟體的時候,軟體後面會註明哪個倉庫的檔案,有可能就用的是lemon本地倉庫。