【发布时间】:2013-02-06 04:18:52
【问题描述】:
我是 rpm 打包的初学者,据我了解,由于 cpio 限制,rpm-build 文件大小>4GB 存在问题。因此,我将包中的大文件拆分为 gnu 拆分为 512MB 的文件 [这是作为 rpmbuild 的一部分完成的,因为大文件是在构建时生成的]。我仍然看到错误:
“错误:在文件 /io1/dm/build/BUILDROOT/pkg/installdir/lib/clfsplitab 上创建存档失败:cpio: Bad magic”其中 clfsplitab 是大文件的 512MB 拆分。关于任何建议
如何追踪确切的问题?还是有更好的方法来处理/生成大型有效载荷包?
更新: 如图所示,错误出现在 clfsplitab 上,即拆分的第二个文件(因为 gnu split 通常拆分后缀为 aa、ab、ac 等的文件。看起来 cpio 无法识别文件的类型,第一个文件是 tar,第二个和其余的是 data..gzipped 分割部分)。似乎只解决了一个错误来引发同样的坏魔法错误,但这次是在最后一部分。
注意:我可以控制 rpm 中文件的输出大小。理想情况下,转储的完整文件大小约为 4g [分成 512mb 块]。但是为了测试包大小确实没有问题,我稳定地减小了生成的目标文件的大小,如果包低于 2G,它似乎可以正常工作,并且我得到了一个很好的 rpm。
如果我没记错的话,尺寸问题自 rpm 4.4.x 起已修复。这看起来仍然像 cpio 问题,rpm 用于归档吗?
【问题讨论】: