码迷,mamicode.com
首页 > 其他好文 > 详细

用reposync 同步YUM源到本地,搭建本地YUM源服务器

时间:2015-12-28 12:38:44      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:createrepo   搭建本地yum源   同步yum源   reposync   

  之前总结的搭建本地yum源是通过rsync直接同步其他在线的yum源,例如清华大学大YUM源,但是类似的阿里云的yum源,因为其不支持rsync所以不能进行同步,

  同样的,想要同步其他一些官方的YUM源,也要对方支持rsync才能支持同步,而有很希望安装的YUM源并不支持rsync,这样怎么办呢?

  因上述原因我想到了另一种思路去同步“所有”我想同步的YUM源,并且搭建成本地可用的YUM源,下面记录下我的思路。

 

1、首先预备好一台nginx或者apacheserver来做本地的YUM源(我喜欢nginx),该操作可以去参考“YUM本地源搭建,且Rsync同步官方”的操作。

 

2、搭建好的本地YUMserver后,再下载想要同步YUM源的repo文件。

  例如:

wget -O /etc/yum.repos.d/CentOS-Base.repohttp://mirrors.aliyun.com/repo/Centos-6.repo

3、安装几个工具,默认的centos是没有安装,yum installcreaterepo yum-utils -y

  安装这两个工具主要使用 createrepo reposync 这两个命令

4、上面的操作完毕后,执行命令yum repolist

  例如:

技术分享


其中“仓库标识:中的名字是我们下面将要用到的

 

 

5、例如我想要把HDP-2.2作为本地YUM源(这是我在做Ambari + hadoop实验的yum源,因为该源可能被很多台hadoop datanode端用到所有,搭建本地yum源会节约大量的出口带宽

提高工作效率。)那么我执行如下命令行

         [root@localhosttmp]# reposync -r HDP-2.2

         如下开始自动更新yum源到本地文件夹

技术分享



技术分享


当然在这一步,我们可以参考下reposync的帮助,直接把想要同步的yum源直接定位到希望下载的某个目录,

例如使用参数 -p

也可以使用 -d 来删除本地老旧,yum源已经不存的安装包。



技术分享



6、当通过reposync命令同步yum源到想要指定的路径之下后,然后使用createrepo命令创对该路径下的rpm创建为本地的YUM仓库

 

6.1、到这里的时候,其实想要的yum本地仓库已经算是制作完毕, 为了简化工作量,我们可以把上面的操作制作成bash脚本

 思路如下:

 reposync自动同步想要的yum 源到指定的路径,因为每次同步后,内容可能有所改变,所以需要重新执行createrepo命令重新创建YUM仓库。

 

 

7、上面的操作完毕后,就是在client端制作repo文件并指向我们本地的YUM源了,因为我们同步YUM源的时候,可能会忽略掉对方的gpgkey,那么记得“gpgcheck=0

 

 

  以上是思路总结,暂时没有时间和精力做这样的本地YUM源,遇到的时候再参考此思路做吧。







本文出自 “冷蛋蛋” 博客,请务必保留此出处http://gdlwolf.blog.51cto.com/343866/1729020

用reposync 同步YUM源到本地,搭建本地YUM源服务器

标签:createrepo   搭建本地yum源   同步yum源   reposync   

原文地址:http://gdlwolf.blog.51cto.com/343866/1729020

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!