如何使用现有RPM构建脱机RPM部署?

时间:2017-01-16 21:23:37

标签: linux centos rpm

我想知道是否有任何东西比如使用现有的RPM软件包并将它们放入一个主RPM进行离线部署/安装。

我要做的是在CentOS 6.5上安装MySQL Server。我想将此分发给我们的服务器, 可以访问公司网络之外的回购。这些包将单独或一个包(希望)上传到我们的内部仓库。

所以我没有运行yum install mysql-community*.rpm,而是希望我能以某种方式将下面的RPM打包到一台和目标服务器上,只需运行yum install some_standard_package.rpm

  • mysql-community-client-5.7.17-1.el6.x86_64.rpm
  • mysql-community-common-5.7.17-1.el6.x86_64.rpm
  • mysql-community-libs-5.7.17-1.el6.x86_64.rpm
  • mysql-community-libs-compat-5.7.17-1.el6.x86_64.rpm
  • mysql-community-server-5.7.17-1.el6.x86_64.rpm

我已经搜索了一个解决方案,但我找到的只是指示我如何重建RPM包形式源的页面,这不是我想要的。

4 个答案:

答案 0 :(得分:2)

afaik无法将多个rpms带入一个rpm。但是你可以:

  • 获取所有原始rpms(考虑使用zypper --download-only
  • 将它们放在一个文件夹中
  • (可选)压缩文件夹
  • 将该文件夹传输给其他服务器
  • (可选)提取文件夹
  • cd folder
  • rpm -Uvh *.rpm(即:安装您在此文件夹中找到的所有rpms)

答案 1 :(得分:2)

您可以将RPM下载到本地存储库,在本地存储库中为它们构建组文件,然后使用yum安装该组:

testlog.fail()

并使用

进行安装
 yum-groups-manager -n "My Group" --id=mygroup --save=mygroups.xml --mandatory mysql-community-client mysql-community-common ....

 createrepo -g mygroups.xml /svr/repo

我没有对此进行测试:它来自here

答案 2 :(得分:0)

offline_yum_install使用yum安装带有依赖关系的rpm软件包。它的输出是mysql.tgz,它有一个install_script和rpm所依赖的所有包。

查看the offline_yum_install github repo

答案 3 :(得分:0)

yumdownloader 可能是一个选项,例如在另一个线程中:https://stackoverflow.com/a/66927190/5078874