![如何将 rpm 下载到本地存储库?](https://linux22.com/image/60786/%E5%A6%82%E4%BD%95%E5%B0%86%20rpm%20%E4%B8%8B%E8%BD%BD%E5%88%B0%E6%9C%AC%E5%9C%B0%E5%AD%98%E5%82%A8%E5%BA%93%EF%BC%9F.png)
我有一个本地存储库,其中包含一些 rpm。 repo xml 等都是最新的。
当我发现我没有的 rpm 时,我希望能够下载它,而不是明显安装它,并将该 rpm 放入 repo 目录中。
我看到我可以使用zypper install --download-only <packagename>
,但这似乎只有当我没有在我的盒子上安装该软件包时才有效,否则它会显示“已安装”。它也不允许我说明我想要的软件包的版本/版本/修订版。
这对我来说没有什么好处。
如何从活动存储库获取 rpm 并将其存储到指定位置?如果 zypper 不适合的话,我不介意安装一个新工具。
答案1
搜索存储库并查看详细信息(所有版本和架构、存储库) - python-base 的示例:
zypper search --details python-base
下载指定版本的RPM包,无需安装。包可以已经安装并且不会改变。
zypper -v install -f --download-only 'python-base=2.6.0'
找到下载的RPM文件:
find /var/cache/zypp/packages/ -name 'python-base*'
答案2
zypper -f install
应该重新安装。
尝试在命令中使用“-f”。
答案3
控制从哪里下载rpm包,不下载其他推荐的包:
zypper --pkg-cache-dir /tmp install --download-only --no-recommends 'qemu=4.2.1-lp152.9.6.1'