(總結)RHEL/CentOS 5.x使用第三方軟件庫(EPEL與RPMForge、RPMFusion軟件庫)

CentOS下運行yum install flash-plugin或yum install mplayer的時候,提示庫裏沒有找到這個軟件?爲什麼會這樣?因爲CentOS是RHEL編譯過來的,去掉了所有關於版權問題的東西。因此,在沒有使用第三方軟件庫的情況下,很多軟件無法用yum install來直接安裝。

EPEL(Extra Packages for Enterprise Linux )軟件庫提供爲 EL4 及 EL5 重新編譯的 Fedora 組件。這個軟件庫在不替換系統組件方面下了功夫。在某些情況下它嘗試直接針對 CentOS 兼容性的問題,但堅決否定軟件庫間的兼容性是目標之一。當它與其它第三方軟件庫混合使用時,問題可能會出現。故此,當你使用 EPEL 時,尤其是當你亦會運用其它件庫的組件時,請確保你使用 yum 的 Priorities 插件。

RPMForge庫現在已經擁有超過10000種的CentOS的軟件包,被CentOS社區認爲是最安全也是最穩定的一個第三方軟件庫。

下面,偶就來講解下如何使用EPEL與RPMForge、RPMFusion軟件倉庫:

一、安裝yum-priorities插件。

這個插件是用來設置yum在調用軟件源時的順序的。因爲官方提供的軟件源,都是比較穩定和被推薦使用的。因此,官方源的順序要高於第三方源的順序。如何保證這個順序,就需要安裝yum-priorities這插件了。

[root@CentOS ~]# yum install yum-priorities #安裝yum-priorities

安裝完後需要設置/etc/yum.repos.d/ 目錄下的.repo相關文件(如CentOS-Base.repo),在這些文件中插入順序指令:priority=N (N爲1到99的正整數,數值越小越優先)

一般的配置是這樣的:

[base], [addons], [updates], [extras] … priority=1
[CentOSplus],[contrib] … priority=2
其他第三的軟件源爲:priority=N (推薦N>10)

如我的CentOS-Base.repo配置爲:

# CentOS-Base.repo
#
# The mirror system uses the connecting IP address of the client and the
# update status of each mirror to pick mirrors that are updated to and
# geographically close to the client. You should use this for CentOS updates
# unless you are manually picking other mirrors.
#
# If the mirrorlist= does not work for you, as a fall back you can try the
# remarked out baseurl= line instead.
#
#

[base]
name=CentOS-$releasever – Base
mirrorlist=http://mirrorlist.CentOS.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.CentOS.org/CentOS/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1

#released updates
[updates]
name=CentOS-$releasever – Updates
mirrorlist=http://mirrorlist.CentOS.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.CentOS.org/CentOS/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1

#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever – Addons
mirrorlist=http://mirrorlist.CentOS.org/?release=$releasever&arch=$basearch&repo=addons
#baseurl=http://mirror.CentOS.org/CentOS/$releasever/addons/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1

#additional packages that may be useful
[extras]
name=CentOS-$releasever – Extras
mirrorlist=http://mirrorlist.CentOS.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.CentOS.org/CentOS/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=1

#additional packages that extend functionality of existing packages
[CentOSplus]
name=CentOS-$releasever – Plus
mirrorlist=http://mirrorlist.CentOS.org/?release=$releasever&arch=$basearch&repo=CentOSplus
#baseurl=http://mirror.CentOS.org/CentOS/$releasever/CentOSplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=2

#contrib – packages by CentOS Users
[contrib]
name=CentOS-$releasever – Contrib
mirrorlist=http://mirrorlist.CentOS.org/?release=$releasever&arch=$basearch&repo=contrib
#baseurl=http://mirror.CentOS.org/CentOS/$releasever/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
priority=2

二、下載與安裝相應EPEL的rpm文件包

1,下載與安裝EPEL的rpm文件包

32位系統

[root@CentOS ~]# rpm -ivh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm

64位系統

[root@CentOS ~]# rpm -ivh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm

如果您不清楚您的系統內核,請使用 uname -a 命令來查看您的內核信息。

2,導入DAG的PGP Key

[root@CentOS ~]# rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL

3,設置/etc/yum.repos.d/epel.repo文件中源的級別,就是添加priority=11這句。

如我的epel.repo文件內容:

[epel]
name=Extra Packages for Enterprise Linux 5 – $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/5/$basearch
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-5&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL
priority=11

[epel-debuginfo]
name=Extra Packages for Enterprise Linux 5 – $basearch – Debug
#baseurl=http://download.fedoraproject.org/pub/epel/5/$basearch/debug
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-debug-5&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL
gpgcheck=1

[epel-source]
name=Extra Packages for Enterprise Linux 5 – $basearch – Source
#baseurl=http://download.fedoraproject.org/pub/epel/5/SRPMS
mirrorlist=http://mirrors.fedoraproject.org/mirrorlist?repo=epel-source-5&arch=$basearch
failovermethod=priority
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL
gpgcheck=1

三、下載與安裝相應rpmforge的rpm文件包

1,下載rpmforge的rpm文件包

32位系統

[root@CentOS ~]# wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.i386.rpm

64位系統

[root@CentOS ~]# wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.1-1.el5.rf.x86_64.rpm

2,安裝DAG的PGP Key

[root@CentOS ~]# rpm –import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

3,驗證rpmforge的rpm文件包

[root@CentOS ~]# rpm -K rpmforge-release-0.5.1-1.el5.rf.*.rpm

4,安裝rpmforge的rpm文件包

[root@CentOS ~]# rpm -i rpmforge-release-0.5.1-1.el5.rf.*.rpm

5,設置/etc/yum.repos.d/rpmforge.repo文件中源的級別,就是添加priority=12這句。

如我的rpmforge.repo文件內容:

### Name: RPMforge RPM Repository for Red Hat Enterprise 5 – dag
### URL: http://rpmforge.net/
[rpmforge]
name = Red Hat Enterprise $releasever – RPMforge.net – dag
baseurl = http://apt.sw.be/redhat/el5/en/$basearch/rpmforge
mirrorlist = http://apt.sw.be/redhat/el5/en/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 1
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
priority=12

四、下載與安裝相應rpmfusion的rpm文件包

(CentOS官方說這個軟件庫裏面的軟件穩定性不如rpmforge,選用!rpmfusion官方站:http://rpmfusion.org)

[root@CentOS ~]# rpm -Uvh http://download1.rpmfusion.org/free/el/updates/testing/5/i386/rpmfusion-free-release-5-0.1.noarch.rpm

[root@CentOS ~]# rpm -Uvh http://download1.rpmfusion.org/nonfree/el/updates/testing/5/i386/rpmfusion-nonfree-release-5-0.1.noarch.rpm

五、測試

1,測試升級

[root@CentOS ~]# yum check-update

輸出信息應該會有以下兩行:

Loading “priorities” plugin

XX packages excluded due to repository priority protections

2,安裝下mplayer播放器試試,如果安裝成功了就沒有問題了。

[root@CentOS ~]# yum install mplayer

PS:以上配置在RHEL/CentOS 5.X所有系列都可以使用!由本人驗證總結整理。

參考文檔:http://wiki.centos.org/zh/AdditionalResources/Repositories/RPMForge

: http://www.ha97.com/2626.html


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章