我正在尝试使用从 RHN(Red Hat Network)下载的命令 reposync 来更新我的软件包。因此,我创建了 Red Hat Enterprise Linux 5、7.5 最新更新的本地镜像。以下是链接,https://access.redhat.com/solutions/23016 我使用 iso 文件设置了本地 repo。
这是我的local.repo
[LocalRepo]
name=Red Hat Enterprise Linux 7.5
baseurl=file://mnt
enabled=1
gpgcheck=0
以下是 yum repolist 的输出
repo id repo name status
LocalRepo Red Hat Enterprise Linux 7.5 5099
我设置了所需的包
yum install yum-utils createrepo
然后我使用命令
reposync --gpgcheck -l --repoid=LocalRepo --download_path=/var/yvmdi
甚至这个命令
reposync --repoid=LocalRepo --download_path=/var/yvmdi
结果失败了,因为结果显示所有 rpm 包都失败了,并且多次表明没有更多的镜像可以尝试。
Rpm 包失败
没有更多镜子可以尝试
我这样做的原因是某些软件包需要最新的补丁,因此我使用 reposync 从 Red Hat Network 获取新更新。您能帮忙解决这个问题吗?谢谢。
答案1
很抱歉没有直接回答你的问题,但考虑到你想做的事情,我相信你会更高兴领班(或者 RHEL Satellite Server,如果你想购买该产品) - 它负责管理库存,镜像包来自 Redhat 和其他 repos,释放和覆盖将软件包版本发布到您的环境中,托管您自己的软件包存储库,处理裸机和 VM 配置,为 RHEL 代理许可。
另外,它还可以用作 Puppet master 和 ENC。
当 RHN 还存在的时候,我曾经使用过 mrepo,但是有了 Foreman,我就再也没有后悔过。
答案2
我知道有点晚了,但是对于遇到同样问题的人来说,在运行几乎任何与 yum 相关的程序(包括 reposync)时请使用 sudo。
sudo reposync --gpgcheck -l --repoid=LocalRepo --download_path=/var/yvmdi
答案3
每次运行 reposync 时清除缓存或删除 yum 缓存目录
答案4
经过一番搜索,我找到了这篇文章(https://bgstack15.wordpress.com/2019/05/05/reposync-fails-no-more-mirrors-to-try/) 建议删除 repo 中的一些受影响的文件。
因此我删除了“更新”包目录中的文件(rm -f openscap*
)(删除了 13 个),并且在下次同步时我没有收到这些包的错误(下载了 13 个)。
对剩余的错误重复上述步骤,一切就都解决了。