作为项目的一部分,我需要从非常方便的Remi Yum repo(Source RPMS)重建源 RPM 。
寻找某种方法来有效地获取这些包并不是一个非常成功的冒险(常见的关键字会导致非常污染的结果Google
)。reposync
可以这样做,但只能作为克隆 repo 的 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/{}'
(从给定的 URL 中提取由 XPath 指定的元素的必需属性。一旦它被清理和记录,extractXPathAttr.pl
我会将它放在github上。)
reposync
可以仅用于源。是否启用源 repo 无关紧要
/etc/yum.repos.d/
。只要那里有一个源代码库,它就会重新同步它是否启用。确保您指定源存储库的名称以及
--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)
您可以尝试镜像存储库的内容:
该
mirror
选项已经使用时间戳,因此它对于本地镜像的更新也很有用。然后
createrepo
在本地使用。