CentOS 的官方源去掉了一些与版权有关的软件,因此想要安装这些软件或者手动下载安装,或者使用其他源. 下面我推荐常用的两个源,这两个源基本可以满足一般服务器的使用需求.
首先,添加源之前要确定系统架构及版本.
查看系统版本:
Shell
此命令大部分主机上已安装,会得到如下显示:
LSB Version: :core-3.1-ia32:core-3.1-noarch:graphics-3.1-ia32:graphics-3.1-noarch Distributor ID: CentOS Descripqion: CentOS release 5.3 (Final) Release: 5.3 Codename: Final
如果未安装 lsb_release,还可以使用下面的命令.
head-1/etc/issue
会得到如下显示:
CentOS release 6.3 (Final)
如果是 CentOS 系统可直接使用以下命令:
rpm-qcentos-release
会得到如下显示:
centos-release-6-3.el6.centos.9.i686
之后,要确定系统架构.
uname-a
会得到如下显示:
Linux jgh.localdomain 2.6.32-279.5.2.el6.i686 #1 SMP Thu Aug 23 22:16:48 UTC 2012 i686 i686 i386 GNU/Linux
i686,i386 就是此系统的架构.
知道了系统版本与架构,就可以在源中找到对应的文件导入.
这里介绍几个源,Remi,RPMforge,EPEL,CentALT,webtatic,Nginx如果你是使用的国内主机,建议添加国内源,如网易,搜狐,中科大,中移动等等.
添加Remi源
Remi 源包含了众多软件,它的更新速度很快. 很多新版本的软件都能第一时间在这里找到.进入Remi官网,找到 Maintained Enterprise Linux (RHEL / CentOS / Other clones) 项
根据系统架构选择相应 release 文件
rpm-ivhhttp://rpms.famillecollet.com/enterprise/remi-release-6.rpm
添加RPMforge源
首先到RPMforge网站找到使用帮助,这里提供了不同操作系统的版本. 点击页面上的CentOS wiki转到 CentOS 官网(转一圈又绕回来了),按照提示选相应的操作系统版本,我的是 CentOS 6,点一下跳转后看到了导入链接,有两个,i686 和 x86_64 架构的. 我选 i686.
Shell
源添加完成,也可按照 CentOS 网站上的说明,分步添加.
添加EPEL源
进入网站往下拉,找到 How can I use these extra packages? 项,根据系统架构与版本选 EL6,点击,系统会根据来访ip查找最快的源镜像,国内访问通常会转到搜狐与中科大的源.如果想用美国源,就要使用代理访问,我的返回 http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
Shell
添加CentALT源
进入网站,在右边分类中找到 Ссылки,虽然是俄文,但也难不倒咱,呵呵,其实咱学生时代学的就是俄语,不过全都还给老师了,汗一个……,接下来就会看到 Репозиторий для CentOS 6,这就是CentOS 6的库了,如果你是 CentOS 5 那就选上一个,如果你想自己去列表里找就点 Просмотр репозитория CentALT.
点击 Репозиторий для CentOS 6 查看内容,拉到下边,找到Установка репозитория那段,再下面的内容你就该看得懂了,下面有几个 rpm 包的链接,先是给出了 EPEL 的源,然后才给出 ALT 自己的. 找到你需要的导入. ok.
rpm-ivhhttp://centos.alt.ru/pub/repository/centos/6/i386/centalt-release-6-1.noarch.rpm
添加 php 源
进入webtatic.com,找到 CentOS/RHEL 6 源并添加.
Shell
添加 Nginx 源
进入Nginx 官网,点右侧的 download 链接,拉到最下面找到 Pre-Built Packages 项. 点mainline version版本的链接. 根据提示编辑 repo 文件的内容,具体操作如下.
在 yum repo 目录创建新的 nginx.repo 文件
vi/etc/yum.repos.d/nginx.repo
输入以下内容
1
2
3
4
5
[nginx]
name=nginxrepo
baseurl=http://nginx.org/packages/mainline/centos/6/$basearch/
gpgcheck=0
enabled=1
保存退出
添加源之后更新 yum
yumcleanall
yumupdate
最后,需要设置源的管理策略
如果你喜欢优先从某个源安装软件,那么建议安装 yum-priorities 插件
这个插件的作用是给多个源排定优先顺序,当多个源中存在同一软件的时候,软件会从优先级最高的源这装.
Shell
安装完后需要设置/etc/yum.repos.d/ 目录下的.repo相关文件(如CentOS-Base.repo),在这些文件中插入顺序指令:priority=N (N为1到99的正整数,数值越小越优先),例如:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[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
至此,源添加完成.