天天看點

Fedora下yum的使用(原創)

配置fedora yum

添加rpm fusion源 

yum localinstall --nogpgcheck http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm 

導入rpm fusion倉庫的密鑰

rpm --import http://atrpms.net/rpm-gpg-key.atrpms 

修改密鑰檔案

gedit /etc/yum.conf 

在打開的檔案尾部添加下面幾行:

[atrpms]

name=fedora core $releasever - $basearch - atrpms

baseurl=http://dl.atrpms.net/f$releasever-$basearch/atrpms/stable

gpgkey=http://atrpms.net/rpm-gpg-key.atrpms

gpgcheck=1

注意:行與行之間不要有空格

添加adobe軟體倉并導入密鑰

rpm -ivh http://linuxdownload.adobe.com/linux/i386/adobe-release-i386-1.0-1.noarch.rpm

rpm --import /etc/pki/rpm-gpg/rpm-gpg-key-adobe-linux 

添加上海交大的yum 源

vim  /etc/yum.repos.d/sjtu.repo  #不喜歡用vim 的人請用gedit

在打開的檔案中添加如下行:

[fedora]

name=fedora $releasever - $basearch

failovermethod=priority

baseurl=ftp://openware.byr.edu.cn/pub/mirror/fedora/linux/releases/$releasever/everything/$basearch/os/

http://ftp.sjtu.edu.cn/fedora/linux/releases/$releasever/everything/$basearch/os/

ftp://ftp.sjtu.edu.cn/fedora/linux/releases/$releasever/everything/$basearch/os/

ftp://ftp.cuhk.edu.hk/pub/linux/fedora/releases/$releasever/everything/$basearch/os/

enabled=1

gpgkey=file:///etc/pki/rpm-gpg/rpm-gpg-key-fedora-$basearch

[updates]

name=fedora $releasever - $basearch - updates

baseurl=ftp://openware.byr.edu.cn/pub/mirror/fedora/linux/updates/$releasever/$basearch/

http://ftp.sjtu.edu.cn/fedora/linux/updates/$releasever/$basearch/

ftp://ftp.cuhk.edu.hk/pub/linux/fedora/updates/$releasever/$basearch/

gpgkey=file:///etc/pki/rpm-gpg/rpm-gpg-key-fedora-$basearch 

然後儲存退出。

添加sohu鏡像源

國内的開源鏡像源也就sohu、163和上海交大那幾個,速度嗎還是要比國外的快點,我們隻好自己動手來更換fedora的更新源啦;

第一步:下載下傳http://mirrors.sohu.com/help/fedora-sohu.repo和http://mirrors.sohu.com/help/fedora-updates-sohu.repo,放入/etc/yum.repos.d/檔案夾下,

第二步:運作yum makecache生成緩存;這樣就可以使用了,ok。

更新緩存

yum makecache 

#切換到/etc/yum.repos.d目錄之下,對照着連結不上的顯示,将連結的yum源挨個删除,yum源有一個對的就好了,多餘的不對源反而讓yum用不了。 

更新yum插件,以加快下載下傳速度

yum install yum-presto  -y

yum -y install yum-fastestmirror  

安裝axel插件

此插件使yum可以多線程下載下傳檔案,以達到更快的速度

yum install  axel 

yum.conf相關内容介紹 

第一部分(這是yum的全局性設定。預設一般不必改動。)

[main]

debuglevel:除錯級别,0──10,預設是2

logfile:yum的日志檔案,預設是/var/log/yum.log。

pkgpolicy: 包的政策。一共有兩個選項,newest和last,這個作用是如果你設定了多個repository,而同一軟體在不同的 repository中同時存在,yum應該安裝哪一個,如果是newest,則yum會安裝最新的那個版本。如果是last,則yum會将伺服器id以 字母表排序,并選擇最後的那個伺服器上的軟體安裝。一般都是選newest。

distroverpkg:指定一個軟體包,yum會根據這個包判斷你的發行版本,預設是redhat-release,也可以是安裝的任何針對自己發行版的rpm包。

exactarch,有兩個選項1和0,代表是否隻更新和你安裝軟體包cpu體系一緻的包,如果設為1,則如你安裝了一個i386的rpm,則yum不會用1686的包來更新。

retries,網絡連接配接發生錯誤後的重試次數,如果設為0,則會無限重試。

tolerent,也有1和0兩個選項,表示yum是否容忍指令行發生與軟體包有關的錯誤,比如你要安裝1,2,3三個包,而其中3此前已經安裝了,如果你設為1,則yum不會出現錯誤資訊。預設是0。

除了上述之外,還有一些可以添加的選項,如:

exclude=,排除某些軟體在更新名單之外,可以用通配符,清單中各個項目要用空格隔開,這個對于安裝了諸如美化包,中文更新檔的朋友特别有用。

gpgchkeck=有1和0兩個選擇,分别代表是否是否進行gpg校驗,如果沒有這一項,預設好像也是檢查的。

第二部分:配置repository伺服器了,所有伺服器設定都應該遵循如下格式:

[serverid]

name=some name for this server

baseurl=url://path/to/repository/ 

其中:

serverid是用于差別各個不同的repository,必須有一個獨一無二的名稱。

name,是對repository的描述,支援像$releasever $basearch這樣的變量;

baseurl是伺服器設定中最重要的部分,隻有設定正确,才能從上面擷取軟體。它的格式是:

baseurl=url://server1/path/to/repository/

url://server2/path/to/repository/

url://server3/path/to/repository/ 

而url支援的協定有http:// ftp:// file://三種。baseurl後可以跟多個url,你可以自己改為速度比較快的鏡像站,但baseurl隻能有一個,也就是說不能像如下格式:

baseurl=url://server2/path/to/repository/

baseurl=url://server3/path/to/repository/ 

在 這裡必須注意的是url指向的目錄必須是repodata目錄的上一級,如果一個yum源沒有repodata檔案夾(主要的是這個檔案夾裡面要有 repomd.xml),那麼這個源就是一個不能使用的源。它也支援$releasever $basearch這樣的變量。url之後可以加上多個選項,如gpgcheck、exclude、failovermethod等,比如:

[updates-released]

name=fedora core $releasever - $basearch - released updates

baseurl=http://download.atrpms.net/mirrors/fedoracore/updates/$releasever/$basearch

exclude=gaim

failovermethod=priority 

其 中gpgcheck,exclude的含義和[main]部分相同,但隻對此伺服器起作用,failovermethode有兩個選項 roundrobin和priority,意思分别是有多個url可供選擇時,yum選擇的次序,roundrobin是随機選擇,如果連接配接失敗則使用下 一個,依次循環,priority則根據url的次序從第一個開始。如果不指明,預設是roundrobin。

幾個變量:

$releasever,發行版的版本,從[main]部分的distroverpkg擷取,如果沒有,則根據redhat-release包進行判斷。

$arch,cpu體系,如i686,athlon等

$basearch,cpu的基本體系組,如i686和athlon同屬i386,alpha和alphaev6同屬alpha。

此 外。還有一件事沒有做,那就是導入每個reposity的gpg key。前面說過,yum可以使用gpg對包進行校驗,確定下載下傳包的完整性,是以我們先要到各個repository站點找到gpg key,一般都會放在首頁的醒目位置,一些名字諸如rpm-gpg-key.txt之類的純文字檔案,把它們下載下傳,然後用rpm --import xxx.txt指令将它們導入,最好把發行版自帶gpg-key也導入,rpm --import /usr/share/doc/redhat-release-*/rpm-gpg-key官方軟體更新用的上,例如:

fc6: rpm --import /usr/share/doc/fedora-release-6/rpm-gpg-key-fedora

至此一切準備工作都已完備。

                http://hi.baidu.com/halazi100/blog/item/e8601cc47f78aebe8226acb4.html

本文原創,轉載請注明出處、作者

如有錯誤歡迎交流指正

郵箱:[email protected]

作者:czmmiao 原文位址:http://czmmiao.iteye.com/blog/1059310