首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我如何镜像一个yum存储库,但只下载每个包的最新版本?

我如何镜像一个yum存储库,但只下载每个包的最新版本?
EN

Server Fault用户
提问于 2014-04-23 04:08:49
回答 3查看 27.9K关注 0票数 8

我想在http://yum.puppetlabs.com/上镜像下面的Yum/RPM存储库:

  • http://yum.puppetlabs.com/el/6/products/
  • http://yum.puppetlabs.com/el/6/dependencies/
  • http://yum.puppetlabs.com/el/5/products
  • http://yum.puppetlabs.com/el/5/dependencies/

木偶存储库包含所有发布的木偶产品,并且相当大,约为8GB。我只需要镜像这些文件的最新版本。

我尝试使用reposync --newest-only镜像存储库:

代码语言:javascript
复制
reposync --config=puppetlabs.repo.el6 --repoid=puppetlabs-products --repoid=puppetlabs-deps --newest-only --download_path=el/6 --quiet --downloadcomps

这个下载了我所需要的最新软件包。但是,存储库并不会自动创建常规目录结构(x86_64noarchSRPMS等)。也不像repodata.xml。因此,我的yum客户会遇到这样的错误:

代码语言:javascript
复制
[root@web1 ~]# yum --quiet install puppet
http://mirrors.example.org/pub/puppet/el/6/puppetlabs-deps/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: puppetlabs-deps. Please verify its path and try again
[root@web1 ~]# 

是否有一种方法可以编程地镜像Yum中的新文件并遵循标准的存储库目录结构?

EN

回答 3

Server Fault用户

发布于 2014-04-23 07:22:24

存储库是唯一可靠的方法来做到这一点。您将需要创建一个小型bash脚本,并使用存储库参数(-a)将每个体系结构下载到一个单独的文件夹中,然后运行createrepo生成元数据。

下面是我有的一个小脚本(它运行在Ubuntu上,但不重要,您可以理解):

猫同步-repos

代码语言:javascript
复制
#!/bin/bash

reposync -n -c /etc/yum/yum.conf -p /repos/centos6 -d -r base -r updates -r extras -r centosplus -r contrib
createrepo -g /repos/centos6/base/repodata/comps.xml /repos/centos6/base
createrepo /repos/centos6/updates
createrepo /repos/centos6/extras
createrepo /repos/centos6/centosplus

reposync -n -c /etc/yum/yum.conf -p /repos -d -r vmware -r home_xtreemfs
createrepo /repos/vmware
createrepo /repos/home_xtreemfs

reposync -n -c /etc/yum/yum.conf -p /repos/vz -d -r openvz-utils -r openvz-kernel-rhel6
createrepo /repos/vz/openvz-utils
createrepo /repos/vz/openvz-kernel-rhel6

reposync -n -c /etc/yum/yum.conf -p /repos/nginx -d -r nginx-stable -r nginx-mainline
createrepo /repos/nginx/nginx-stable
createrepo /repos/nginx/nginx-mainline
票数 7
EN

Server Fault用户

发布于 2014-04-23 18:58:55

另一个容易使用的选项是空间行走,易于使用,您可以在回购管理器和主机之间建立安全连接,管理想要同步的包并提供给主机,安排同步更新和补丁以及其他许多很酷的功能。

票数 0
EN

Server Fault用户

发布于 2017-06-18 23:10:59

编辑/etc/sysconfig/uln镜像更改ALL_PKGS =0

0 ->下载最新版本,1 ->下载所有版本

票数 0
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/590697

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档