我不确定它是否是推荐的方法,如果用户没有Web访问权限,而我的软件需要,让我们说:lib
gcc-4.3.0.0.rpm(例如),我想捆绑这个对于特定支持的操作系统(例如:RHEL 5.10)及其在单个.rpm中的所有依赖关系.
什么是最好的方法呢?
谢谢,
将所有依赖项捆绑到单个RPM中会很棘手,尤其是因为您构建的系统可能与目标具有不同的程序包组成(例如,您的目标已经安装了更新或冲突的程序包,您可能会无意中覆盖它们).
原文链接:https://www.f2er.com/javaschema/281724.html但是,您可以获取所有必备软件包的列表,并同时安装所有必备软件包.
假设您有两个系统(构建和目标)具有相同的风格和发布(例如,在CentOS 6上为CentOS 6制作包列表),请尝试以下方法:
$sudo yum install yum-utils # not necessary on the target $mkdir package-bundle $yumdownloader --destdir package-bundle `repoquery --resolve --requires $PACKAGE_NAME` $tar -czvf package-bundle.tar.gz package-bundle
在目标系统上:
$tar -xzvf package-bundle.tar.gz $sudo yum install package-bundle/*.rpm
上面使用repoquery而不是依赖于yumdownloader来解析依赖关系,因为yumdownloader在设置–resolve标志时似乎不会递归解析.