我基本上想要一份当前安装在我的服务器上的正确版本的所有 rpm 的副本。那怎么办呢?
我有一台注册到所有 RHEL 存储库以及 EPEL 和 RPMfusion 的服务器。我 /etc/yum.conf
有keepcache=1
,这可以通过在执行操作时保留所有下载和安装的 rpm 来实现嗯更新。
但我做了一个百胜干净所有packages/
并且子文件夹下的所有 rpm 都/var/cache/yum/x86_64/7Server
消失了。
我在想一个百胜 makecache可能会这样做,但不会,它会重做一些元数据,给我一个 2.7GB 的缓存文件夹,但我想要在packages/
子文件夹下可用的 rpm 仍然是空的。恢复所有这些转速的最佳或最优雅的方法是什么? Anrpm -qa
列出了 2,357 rpm,我基本上想要所有这些。
答案1
此命令应该会为您提供 RPM。刚刚运行它后,由于某些原因,似乎有一堆 RPM 不在 CentOS 保管库中,因此您可能必须手动跟踪它们或启用包含它们的正确 yum 存储库。
rpm -qa | xargs -n1 yumdownloader -y --enablerepo='C7*'
该--enablerepo='C7*'
部分是启用 中的存储库/etc/yum.repos.d/CentOS-Vault.repo
。如果您只想启用所有已安装的存储库,那就是--enablerepo='*'
答案2
我试图弄清楚你想要什么与“rpm -qa”的输出不同。
如果您想要实际文件,请使用该命令的输出并使用 wget 或curl 编写 shell 脚本,以从您最喜欢的存储库下载所有这些文件。
如果这不是您想要的,请进一步详细说明。