Linux   发布时间:2022-04-01  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了linux – 如何镜像yum存储库但只下载每个软件包的最新版本?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我想在 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.puppetl
我想在 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/

Puppet存储库包含所有已发布的Puppet产品,并且大小约为8GB.我只需要镜像最新版本的文件.

我试图使用reposync镜像存储库 – 仅限于:

reposync --config=puppetlabs.repo.el6 --repoid=puppetlabs-products --repoid=puppetlabs-deps --neWest-only --download_path=el/6 --quiet --downloadcomps

这下载了我需要的最新软件包.但是,重新同步不会自动创建常规目录结构(x86_64,noarch,SRPMS等),也不会镜像repodata.xml.结果,我的yum客户端出现如下错误

[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存储库中的新文件并遵循标准存储库目录结构?

解决方法

reposync是唯一可行的方法.您需要创建一个小的bash脚本并使用reposync参数(-a)在单独的文件夹中下载每个体系结构,然后运行 createrepo生成元数据.

这是我的一个小脚本(它在Ubuntu上运行,但没关系,你明白了):

猫同步回购

#!/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

大佬总结

以上是大佬教程为你收集整理的linux – 如何镜像yum存储库但只下载每个软件包的最新版本?全部内容,希望文章能够帮你解决linux – 如何镜像yum存储库但只下载每个软件包的最新版本?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。