此文章不错。留着自己参看用。。
服务器有很大一部分使用的centos,以前一直使用be10.com的源更新,速度还可以,be10.com关闭源服务以后,开始痛苦的yum。 虽然有yum-fastestmirror,但是找到一个速度很快的源还是很不容易的,于是决定自己搞个源,参考了centos官方的源设置文档
下边是脚本 rsync_mirror.sh
- #!/bin/sh
- . /etc/profile
- #调试使用
- #rsync="/usr/bin/rsync -aqzH --delete --delay-updates"
- rsync="/usr/bin/rsync -azHv --delete --delay-updates"
- mirror=rsync://mirrors.kernel.org/centos
- #mirror=rsync://mirror.csclub.uwaterloo.ca/centos
- #mirror=rsynv://mirror.centos.org/centos
- #北方网通访问几个提供rsync的源速度都还可以。
- #verlist="5 5.1 5.2" 需要什么版本的源在这里加
- verlist="5.2 5.3"
- archlist="i386 x86_64 SRPMS"
- #archlist="i386 SRPMS"
- baselist="os updates addons extras centosplus contrib fasttrack"
- #rsync同步到本地的位置,大概一个版本需要25g的空间比如5和5.2大概一共需要50g的空间,5.3目前还比较小
- local=/bak/shisl/rsync/centos
- for ver in $verlist
- do
- for arch in $archlist
- do
- for base in $baselist
- do
- remote=$mirror/$ver/$base/$arch/
- mkdir -p $local/$ver/$base/$arch
- $rsync $remote $local/$ver/$base/$arch/
- done
- done
- done
- $rsync $mirror/RPM-GPG-KEY-CentOS-5 $local
- $rsync $mirror/RPM-GPG-KEY-beta $local
- $rsync $mirror/TIME $local
- $rsync $mirror/timestamp.txt $local
复制代码
ok,放到crontab里每天晚上执行一次,每天更新一个应该已经够用了 假设脚本的位置是在/root/script/rsync_mirror.sh 30 3 * * * /root/script/rsync_mirror.sh
下来该搞个http或者ftp提供源了,这里用vsftpd,打开匿名用户登录 下边是我的ftp的配置文件,比较简单。 [root@node03 vsftpd]# more vsftpd.conf|grep -v ^#|grep -v ^$
- anonymous_enable=YES
- local_enable=YES
- write_enable=YES
- local_umask=022
- dirmessage_enable=YES
- xferlog_enable=YES
- connect_from_port_20=YES
- xferlog_std_format=YES
- listen=YES
- pam_service_name=vsftpd
- userlist_enable=YES
- tcp_wrappers=YES
复制代码
还差关键的一步,把镜像目录挂到ftp下去 mount --bind /bak/shisl/rsync/centos /var/ftp
现在就可以通过ftp访问自己的centos源了
要使用自己的centos源还需要修改一下yum的配置/etc/yum.repos.d/CentOS-Base.repo
- [base]
- name=CentOS-5 - Base
- repo=os
- baseurl=ftp://10.1.2.23/centos/5.2/os/$basearch/
- gpgcheck=1
- gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos5
- [update]
- name=CentOS-5 - Updates
- baseurl=ftp://10.1.2.23/centos/5.2/updates/$basearch/
- gpgcheck=1
- gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos5
- [addons]
- name=CentOS-5 - Addons
- baseurl=ftp://10.1.2.23/centos/5.2/addons/$basearch/
- gpgcheck=1
- gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos5
- [extras]
- name=CentOS-5 - Extras
- baseurl=ftp://10.1.2.23/centos/5.2/extras/$basearch/
- gpgcheck=1
- gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos5
- [centosplus]
- name=CentOS-5 - Plus
- baseurl=ftp://10.1.2.23/centos/5.2/centosplus/$basearch/
- gpgcheck=1
- enabled=0
- gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos5
- [contrib]
- name=CentOS-5 - Contrib
- baseurl=ftp://10.1.2.23/centos/5.2/contrib/$basearch/
- gpgcheck=1
- enabled=0
- gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos5
复制代码
这里需要小心的是不同的版本ftp://10.1.2.23/centos/5.2/ 中的版本号需要更改一下
现在就可以yum update了
有个本地的源还是很方便的,用kickstart最小化安装centos,3分钟搞一个…… |
原文地址:http://linux.chinaunix.net/bbs/viewthread.php?tid=1096507
还有篇简单的:http://hi.baidu.com/billdkj/blog/item/d6c10ff03dc9eda7a50f52c2.html