今天无意发现信箱里有位朋友向我询问创建本地yum源,如何和官方的yum源同步的问题.之前也为内网的机器安装软件方便创建过一个YUM源用的DVD光盘镜像创建的.并没有仔细考虑和官方同步的问题.今天借此google了下,总结下以后备用.

     你想到问题,其实很多人都想过,并且有人实现了,善用google

很简单就是安装一个软件,yum install yum-utils 

其中有个命令是同步命令reposync 用来同步远程的yum repository

用法: reposync --repoid=base

 
  
  1. [updates: 1     of 1191  ] Downloading RPMS/ImageMagick-6.2.8.0-15.el5_8.i386.rpm 
  2. ImageMagick-6.2.8.0-15.el5_8.i386.rpm                                                                     | 3.3 MB     03:04      
  3. [updates: 2     of 1191  ] Downloading RPMS/ImageMagick-6.2.8.0-15.el5_8.x86_64.rpm 
  4. ImageMagick-6.2.8.0-15.el5_8.x86_64.rpm                                                                   | 3.3 MB     02:44  

其中--repoid意义,你查看文件/etc/yum.respo.d/CentOS-Base.repo就会马上明白
同样的再次运行这个命令就会跳过已经下载过的文件,节省带宽.

剩下的我就简略说下,配合使用createrepo 就可以建立同步官方源的本地yum源了.

可以写个脚本,实时同步很方便.

无意中看到一种不用创建本地源的方法就是创建squid代理,使内网可以yum安装软件包.这样就可以只下载需要的软件包即可.

参考:http://linux.die.net/man/1/reposync