CentOS 5.5 的基本安装完成后,就可以用 yum update 来更新系统,然后可以用 yum 来安装各种软件,在官网有yum 的详细文档:
http://www.centos.org/docs/5/html/yum/
使用其缺省的 yum 配置,有个明显的问题,就是有些软件包找不到,例如 phpMyAdmin,就无法安装,而 有些软件已经很旧, 例如 PHP, 是 5.1.6 版本 (官网的稳定版是5.3.3),还有许多应用软件,不在 Centos repo 列表中。
所以,手工添加配置 yum repo 则是系统安装更新必须的操作。
手工添加 yum repo 大概有以下几步:
(1)下载 GPG-KEY
(2)导入 GPG-KEY
(3)下载 repo 文件
(4)安装 repo 文件
(5)启用该 repo 和设定 优先权(priority)
以下是手工添加 yum repo 的实例。
(一)安装优先权管理
(1) 安装
yum install yum-priorities
(2) 启用优先权管理
# nano /etc/yum/pluginconf.d/priorities.conf
[main]
enabled=1
修改 enabled 项的值为 1,如上。保存(Ctrl O)和退出(Ctrl X)。
(3) 设定 CentOS-Base repo 为第一优先
# nano /etc/yum.repos.d/CentOS-Base.repo
在 [base], [updates], [addons], 和 [extras] 这些项目最后一行,回车,添加一行如下:
priority=1
这是确保 Base, Updates, Addons, 和 Extras 都优先使用系统缺省的 repo.
在 [centosplus]项目最后一行,回车,添加一行如下:
priority=2
保存(Ctrl O)和退出(Ctrl X)。
这里设定 CentOSPlus 的优先权为2. 以后我们手工添加的 repo 就设定 3, 4 或其他数字 (最小的优先权可设为99).
以上配置及以下步骤参考自以下链接,有兴趣的可以看原文:
http://dev.antoinesolutions.com/centos
(二) 安装 EPEL repo
(1) 下载 GPG-KEY
# wget http://download.fedora.redhat.com/pub/epel/RPM-GPG-KEY-EPEL
(2) 导入 GPG-KEY
# rpm --import RPM-GPG-KEY-EPEL
(3) 下载 repo
# wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm
(4) 安装 repo
# rpm -Uvh epel-release-5-4.noarch.rpm
(5) 设定启用和优先权
#nano /etc/yum.repos.d/epel.repo
修改 enabled 项的值为 1,并添加一行为 priority=3, 如下:
保存(Ctrl O)和退出(Ctrl X)。
(三) 安装 RPMforge repo
[注意:] 最新的 RPMforge 的设置应从 Centos wiki 取得,官网地址:
http://wiki.centos.org/AdditionalResources/Repositories/RPMForge?action=show&redirect=Repositories%2FRPMForge
[备注]我上星期也是从官网得到 GPG KEY 和 rpm 地址的,今天再看一下官网,具体的 KEY 和 rpm 地址都变了,呵呵。
(1) 下载和导入 GPG-KEY
# rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
(2) 下载 repo
# wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
(3) 安装 repo
# rpm -i rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
(4) 设定启用和优先权
# nano /etc/yum.repos.d/rpmforge.repo
修改 enabled 项的值为 1,并添加一行为 priority=5 。
注意:这里设定的 RPMforge 优先权并不太高,因为其软件包 例如 phpmyadmin 为 2.11 版 不是最新稳定版。
保存(Ctrl O)和退出(Ctrl X)。
(四) 安装 remi repo
(1) 下载和导入 GPG-KEY
# rpm --import http://rpms.famillecollet.com/RPM-GPG-KEY-remi
(2) 直接下载 repo 文件
# cd /etc/yum.repos.d
# wget http://rpms.famillecollet.com/enterprise/remi.repo
(3) 设定启用和优先权
# nano /etc/yum.repos.d/remi.repo
修改 enabled 项的值为 1,并添加一行为 priority=4 。
注意:这里设定的 remi 优先权比 RPMforge 高,因为 remi 的 PHP 和 MySQL 软件包比较新。
保存(Ctrl O)和退出(Ctrl X)。
(五)安装 karan repo
(1) 下载和导入 GPG-KEY
# rpm --import http://centos.karan.org/RPM-GPG-KEY-karan.org.txt
(2) 直接下载 repo 文件
# cd /etc/yum.repos.d
# wget http://centos.karan.org/kbsingh-CentOS-Extras.repo
(3) 设定启用和优先权
# nano /etc/yum.repos.d/kbsingh-CentOS-Extras.repo
修改 enabled 项的值为 1, gpgcheck 值为 0, 并添加一行为 priority=4 。
保存(Ctrl O)和退出(Ctrl X)。
以上手工添加完成后,可以运行 yum update 更新一下。
(六)应用软件使用 yum 安装
某些应用软件,例如 webmin, 可以手工配置 repo 文件 然后使用 yum 来安装更新和删除软件。这里以 webmin 为例,官网的步骤可看原文:
http://www.webmin.com/rpm.html
(1) 导入 GPG-KEY
# rpm --import http://www.webmin.com/jcameron-key.asc
(2) 建立 webmin.repo 文件
#nano /etc/yum.repos.d/webmin.repo
[Webmin]
name=Webmin Distribution Neutral
#baseurl=http://download.webmin.com/download/yum
mirrorlist=http://download.webmin.com/download/yum/mirrorlist
enabled=1
保存(Ctrl O)和退出(Ctrl X)。
(3) 安装应用软件
yum install webmin
(七)删除 repo
如果要删除一个 repo, 例如现在要删除 RPMforge, 可以这样做:
# yum remove rpmforge-release
(八)采用 iso 映像文件, CD/DVD 或本地服务器作为 repo
可参考以下链接:
CentOS: Install Packages Via yum Command Using DVD / CD as Repo
http://www.cyberciti.biz/faq/centos-linux-install-packages-from-dvd-using-yum/
Howto Setup yum repositories to update or install package from ISO CDROM Image
http://www.cyberciti.biz/tips/redhat-centos-fedora-linux-setup-repo.html
How to create a yum repository on RHEL/CentOS 5.x with CD/DVD or ISO images
http://code.google.com/p/iredmail/wiki/Create_a_Local_Yum_Repository
Howto setup local yum repository on RedHat Fedora12 Centos5.4
http://www.linuxmaza.com/system-administration/howto-setup-local-yum-repository-on-redhat-fedora12-centos5-4/
Create Local yum repo for CentOS OS Upgrade
http://www.linuxreaders.com/2010/05/17/create-local-yum-repo-for-centos-os-upgrade/
:-