关于CentOS5 VPS中的yum源的配置

Posted by zuzhihui in vps技术 on 2009/01/02 with No Comments

CentOS中的yum能很方便的更新安装软件包,它能够自动解决rpm包之间的依赖关系,就像Debian中的apt-get一样。 使用yum必须要配置yum源地址,在国内的网络情况下,配置一个速度快的yum源还真不容易。不像Debian的apt源,国内有很多。本文介绍一些我们配置yum源的经验。

不使用国内的yum源

以前也以为国内的yum源速度快,但不知实际情况却恰恰相反。国内的一些yum源速度非常慢,yum更新慢的印象都是国内的源造成的。我分析慢原因还是国内的带宽少,这种没有回报的公益事业在国内没有多少人愿意投入,带宽都用来卖给客户赚钱了。

另外国内的yum源非常不稳定,以前常使用的be10的国内yum源,现在经常不能访问。

国外的CentOS VPS

如果CentOS VPS的位置在国外,配置有一个国外的IP地址,那么使用缺省的yum源设置应该就很好。就像我们的美国VPS,使用的都是缺省的yum源,速度相当快

国内的CentOS VPS

国内的CentOS VPS使用缺省的yum源速度往往很慢,因为缺省的yum源是这样设置的:

mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os

http://mirrorlist.centos.org这个URL能够自动返回VPS所在地附近的一些yum源,而这些yum源都是位于中国大陆或者台湾等地区,这些地区的源访问起来非常慢。为了解决这个问题,我们只需在mirrorlist这一行的尾部添加如下字符串即可:

&cc=us

解释一下上面的字符串:&是用来连接URL中的参数的;cc是http://mirrorlist.centos.org这个URL能接受的一个参数,代表地区的意思;us代表美国。这样,一个完整的mirrorlist配置应该如下:

mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&cc=us

这样就能够直接访问美国地区的那些yum源,这些yum源从中国访问也是很快的。

附件

附上整个的/etc/yum.repos.d/CentOS-Base.repo文件供参考:

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&cc=us
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&cc=us
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#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&cc=us
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&cc=us
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&cc=us
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-5

更简单的,可以用root在CentOS 5 VPS下执行如下命令更新yum源:

wget http://rashost.com/download/yum.sh
sh yum.sh
标签:

Leave a Comment

Back to Top

2007-2013 © 北京瑞豪开源科技有限公司 京ICP备13004995号-2