这两天需要做一个本地的yum源 开始是打算自己来安排整个目录结构 不聊得到高人指点 可以直接用rsync网络上的源 参考了
这篇文章 准备用的源 写了一个小脚本来做这件事情 直接上代码吧
- #!/bin/sh
- # sync yum centos 5 repos
- # mirror url:
- #
- #
- # author: pengfei xue
- Date=`date +%Y%m%d`
- rsyncBin="/usr/bin/rsync"
- function rsync_yum_repo()
- {
- repo_name=$1
- # build rsync paramters
- case $repo_name in
- ustc)
- logFile="/var/log/rsync_yum/ustc_$Date.log"
- excludeFile="/var/ftp/pub/CentOS/ustcExclude.list"
- rsyncParameters="-avrt --delete --exclude-from $excludeFile"
- mirrorUrl="rsync://mirrors.ustc.edu.cn/centos/"
- localSyncPath="/var/ftp/pub/CentOS/ustc/"
- ;;
- sohu)
- logFile="/var/log/rsync_yum/sohu_$Date.log"
- excludeFile="/var/ftp/pub/CentOS/sohuExclude.list"
- rsyncParameters="-avrt --delete --exclude-from $excludeFile"
- mirrorUrl="rsync://mirrors.sohu.com/dag/redhat/"
- localSyncPath="/var/ftp/pub/CentOS/sohu/"
- ;;
- esac
- # begin to sync
- echo "---- $Date `date +%T` Begin ----" >> $logFile
- $rsyncBin $mirrorUrl $rsyncParameters $localSyncPath >> $logFile 2>&1
- echo "---- $Date `date +%T` End ----" >> $logFile
- }
- for repo in ustc sohu
- do
- rsync_yum_repo $repo
- done
在用rsync时 写了一个exclude文件 把一些不想要的目录或者文件放在了这个文件中 文件内容如下 我们用的发行版是Centos5.4 所以一些其它的版本的文件都给过滤掉 centos5系列的整个镜像源有11G左右的大小 好在之前建的分区足够大 不然就挂了
- debug
- isos
- i386
- 2
- 2.*
- 3
- 3.*
- 4
- 4.*
- 6
- 6.*
- build
- dostools
- graphics
- Archive-Update-in-Process-mirrors.ustc.edu.cn
- HEADER.html
- TIME
- HEADER.images
阅读(887) | 评论(0) | 转发(0) |