轉載請註明文章出處:tlanyan.me/yum-repos-s…php
CentOS系統帶有幾個官方源,默認啓用的僅有base, updates和extras三個。若是但願從源安裝Nginx,高版本的gcc/PHP等軟件,則要導入提供軟件包的第三方源。本文整理常見的第三方yum源,並以CentOS 7爲例介紹其安裝方法。python
EPEL是Extra Packages for Enterprise Linux的縮寫,其爲EL6或EL7提供重建的Fedora組件,而且不會替換base中的包。EPEL算得上是最著名的第三方軟件源,幾乎各個雲服務器廠商提供的CentOS 系統均會自帶該源並默認啓用。其收錄了web中經常使用的Nginx軟件包。git
EPEL的官網是:fedoraproject.org/wiki/EPEL,能夠經過yum install -y epel-release
安裝。web
SCL是Software Collections的縮寫,由CentOS 特別興趣小組所維護。其收錄了許多程序的新版本,例如gcc, PHP, git, python等。安裝的軟件可與舊版共存,包名多以**rh-**爲前綴。算法
SCL的官網是www.softwarecollections.org,CentOS 7的安裝方法是:yum install centos-release-scl
。安裝完成後在/etc/yum.repos.d
目錄下會出現CentOS-SCLo-scl.repo和CentOS-SCLo-scl-rh.repo兩個文件。安裝後源默認啓用。vim
ELRepo是The Community Enterprise Linux Repository的縮寫,旨在提供驅動程序來加強系統的硬件支持(包括:顯示、文件系統、硬件監控、網絡、音效、網絡攝像鏡驅動程序)。也提供較新版的內核,例如支持BBR算法的4.9+內核。centos
ELRepo的官方是elrepo.org/,CentOS 7系統的安裝方法是:服務器
rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
複製代碼
安裝完成後在/etc/yum.repos.d
目錄下出現elrepo.repo文件,可編輯文件中的enable
的值啓用具體倉庫,也可在運行時用--enablerepo="xxx"
指定使用的軟件庫。網絡
IUS的官網是ius.io/,旨在爲RHEL和CentOS提供高質量、最新版的軟件,如PHP, Python, MySQL等。CentOS 7安裝該源的命令爲:rpm -Uvh https://centos7.iuscommunity.org/ius-release.rpm
。編輯器
RPMfusion提供Fedora Project或 Red Hat不肯發行的軟件,包含「免費(開源軟件)」和「非免費(源代碼可公開獲取但不開源且限非商業用途)」兩種類型的倉庫。
RPMfusion的官網是rpmfusion.org/,CentOS 7的安裝方法是:
# 免費庫
yum localinstall --nogpgcheck https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm
# 非免費庫
yum localinstall --nogpgcheck https://download1.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-7.noarch.rpm
複製代碼
Remi維護大量組件,包括最新版的PHP, GLPI等。Remi的safe倉庫不會替代系統的基本組件,但remi-phpxx.repo中的軟件包會替代系統默認的php。須要注意的是Remi可能會與IUS的軟件包衝突,由於雙方都提供最新版的PHP。
Remi的官方網站是rpms.remirepo.net/,CentOS 7的安裝方法是:yum install -y remi-release
。
提供較新版的PHP、MySQL及其它組件。建議用IUS或SCL代替。
除上述收錄多個軟件包的綜合源外,還有許多由軟件官方維護的源,例如Nginx, Gitlab, Nodejs等。這些源的安裝和使用方法請參考官方指南。
源的配置文件均位於/etc/yum.repos.d
目錄下,可用vim, nano等編輯器打開配置文件並編輯。
一些有用的源管理yum命令:
yum repolist
: 列出全部啓用的源, 等同於yum repolist enabled
;yum repolist disabled
: 列出全部禁用的源;yum repoinfo [enabled|disabled]
:列出啓用(禁用)源的更詳細信息yum --disablerepo="*" --enablerepo="xxxx" install/search
: 從指定源安裝/搜索軟件;「--disablerepo」和"--enablerepo"選項可獨立或配合使用,動態啓用和禁用源。由於某些緣由,從位於境外的源鏡像安裝軟件慢的讓人抓狂。若是遇到了此種情形,建議使用代理,或者配置源的地址爲國內鏡像的地址。國內知名的yum源鏡像站有:
具體倉庫的配置方法請參考站內指南。須要注意的是並不是全部的鏡像都包含上述列出的yum源,本人推薦阿里雲、清華大學、中科大鏡像站。