Centos7 自定义rpm pkg需要很长时间才能安装,并在最后导致cpio错误

Centos7 自定义rpm pkg需要很长时间才能安装,并在最后导致cpio错误,centos7,rpm,compression,rpmbuild,cpio,Centos7,Rpm,Compression,Rpmbuild,Cpio,我创建的rpm包需要很长时间才能安装。它只包含Berkely db格式的数据库文件,大小为2.2GB 下面是我的RPM规范 #AutoReq: no AutoReqProv: no %define PYTHON /usr/bin/python %define RPM_BUILD_DIR %{_topdir}/BUILD %define RPM_BUILD_ROOT %{_topdir}/tmp %global __os_install_post %(echo '%{__os_install_po

我创建的rpm包需要很长时间才能安装。它只包含Berkely db格式的数据库文件,大小为2.2GB

下面是我的RPM规范

#AutoReq: no
AutoReqProv: no
%define PYTHON /usr/bin/python
%define RPM_BUILD_DIR %{_topdir}/BUILD
%define RPM_BUILD_ROOT %{_topdir}/tmp
%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g')

%define _source_payload w0.gzdio
%define _binary_payload w0.gzdio

#
Summary:   Prefixcat db package
Name:      prefixcat
Version:   %{VERSION}
Release:   %{RELEASE}
Source:    %{_sourcedir}
BuildRoot: %{_tmppath}/%{name}
License:   internal-only
Distribution: WR Linux
Vendor:    XXX xxx
Packager: XXX xx<xxx@xxx.com>
Group:     Test/Applications
#BuildArch: x86_64

%description
Prefixcat db

#%prep

#%build

%install
mkdir -p %{buildroot}/data/db/wbrs/factory/db
cp -r %{_sourcedir}/data/db/wbrs/factory/db/prefixcat_db %{buildroot}/data/db/wbrs/factory/db

%clean
%{__rm} -rf %{buildroot}

%pre

%post
echo "Prefixcat DB installed successfully in /data folder"


%files
%defattr(-,admin,root,-)
/data

%changelog
* Tue Aug 01 2017 Sudharsan C <xxx@xxx.com>
- Create prefixcat db as a seperate rpm
#自动均衡:否
自动修复程序:没有
%定义PYTHON/usr/bin/PYTHON
%定义RPM_BUILD_DIR%{u topdir}/BUILD
%定义RPM\u BUILD\u ROOT%{\u topdir}/tmp
%全局的{uuuu os_install_post}%(echo'{uuu os_install_post}'sed-e's!/usr/lib[^[:space:]*/brp python bytecompile[:space:].$!!g')
%定义_源_有效载荷w0.gzdio
%定义二进制有效负载w0.gzdio
#
概要:Prefixcat数据库包
名称:prefixcat
版本:%{Version}
释放:%{Release}
来源:%{u sourcedir}
BuildRoot:%{u tmppath}/%{name}
许可证:仅限内部
发行:wrlinux
供应商:XXX XXX
包装商:XXX xx
组别:测试/应用
#BuildArch:x86_64
%描述
预加速分贝
#%准备
#%建造
%安装
mkdir-p%{buildroot}/data/db/wbrs/factory/db
cp-r%{u sourcedir}/data/db/wbrs/factory/db/prefixcat\u db%{buildroot}/data/db/wbrs/factory/db
%干净的
%{{uu rm}-rf%{buildroot}
%前
%职位
echo“在/data文件夹中成功安装了Prefixcat DB”
%档案
%defattr(-,admin,root,-)
/资料
%变更日志
*2017年8月1日星期二Sudharsan C
-创建prefixcat db作为单独的rpm
rpm ivh prefixcat-1.1.100.x86_64.rpm,安装几乎需要15分钟

上述命令也会导致此错误

错误:文件上的存档解压缩失败 /data/db/wbrs/factory/db/prefixcat\u db;59818e12:cpio:读取失败- 错误的文件描述符

有关于如何压缩大小和更快安装的帮助吗


仅供参考:-我正在CentOS7上构建此rpm,并在windriver 8上安装。两个操作系统的RPM版本相同

如果目标体系结构为32位,则可能会遇到2GB文件大小限制。目标体系结构和根文件系统类型是什么

编辑:因为您使用的是64位内核,所以2GB限制的可能性要小得多


您是否已验证(使用sha256sum或类似工具)远程系统上的.rpm文件与您的开发系统上的文件匹配?

目标体系结构:64位,#uname-a//Linux xxx-4.1.21-WR8.0.0.10#1 SMP PREEMPT Fri Jul 21 23:50:45 IST 2017 x86_64 x86_64 GNU/LinuxSHA的输出在这两个位置上是相同的。我不认为这是问题所在,我更担心rpm安装错误,而不是安装所需的时间,root@xxx3月3日,rpm-3月3日,rpm-3月3日,rpm-3月4日,rpm-4月3日,rpm-3月3日,rpm-3月月3日日日日,罗马罗马罗马罗马罗马罗马罗马罗马罗马的第三支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支支############(100 100%100%]1:1:1:10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10########[100%]错误:文件/data/db/wbrs/factory/db/prefixcat\u db上的存档解包失败;59819882:cpio:read failed-错误的文件描述符REBADF具有误导性:发生错误时,它恰好是errno中的内容。几乎可以肯定的是,您已经超过了可以放入cpio有效负载和rpm包中的限制(如果有2.2Gb的文件)。将数据拆分为其他子包(可能使用文件清单)。添加一个“任务包”,其中要求:如果要使用depsolver安装整个文件集,请使用每个子包。您好,我知道拆分文件并将文件缝合回%post,这很有效。但是我们阅读了rpm文档(),并且在较新的rpm版本中提供了高达4GB的支持。