RPM Repo:仅克隆源包

RPM Repo:仅克隆源包

作为项目的一部分,我需要从非常方便的Remi Yum repo(来源 RPMS)

寻找某种有效获取这些软件包的方法并不是一项非常成功的尝试(常用关键字会导致非常污染的结果Google)。reposync可以做到这一点,但只能作为克隆存储库的 RPM 部分的附加组件。我需要的是仅为源代码执行此操作的东西。

有什么方法可以有效地做到这一点?

注意:已经应用了低效的解决方案:

extractXPathAttr.pl 'http://rpms.famillecollet.com/SRPMS/'  '//tr/td[2]/a[1]' 'href'  |\
    grep src.rpm |\
    xargs -I{} wget 'http://rpms.famillecollet.com/SRPMS/{}'

extractXPathAttr.pl从给定的 URL 中提取 XPath 指定的元素的必需属性。我会把它放在github一旦它被清理并记录下来。)

答案1

reposync仅可用于来源。

源 repo 是否启用并不重要/etc/yum.repos.d/。只要有一个源 repo,无论是否启用,它都会进行 reposync。

确保您指定源存储库的名称以及--source选项:

reposync -n --source -r foobar-source

本答案中使用的版本: rpm -q yum-utils yum-utils-1.1.31-42.el7.noarch cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core)

答案2

您可以尝试镜像存储库的内容:

wget --mirror http://rpms.famillecollet.com/SRPMS/

mirror选项已经使用时间戳,因此对于本地镜像的更新也很有用。

然后在本地使用createrepo

相关内容