Пользовательский RPM pkg занимает очень много времени для установки и вызывает ошибку cpio в конце
Пакет rpm, который я создал, занимает много времени для установки. Он содержит только файл базы данных формата Berkely db и размером 2,2 ГБ.
Ниже моя спецификация 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
rpm ivh prefixcat-1.1.100.x86_64.rpm, установка занимает почти 15 минут.
Также приведенная выше команда вызывает эту ошибку
ошибка: не удалось распаковать архив в файл /data/db/wbrs/factory/db/prefixcat_db;59818e12: cpio: ошибка чтения - неверный дескриптор файла
Любая помощь о том, как сжать размер и установить быстрее?
К вашему сведению:- Я собираю этот RPM на CentOS7 и устанавливаю на Windriver 8. Версия RPM одинакова для обеих ОС.
1 ответ
Если целевая архитектура является 32-разрядной, возможно, вы используете ограничение размера файла 2 ГБ. Какова целевая архитектура и тип корневой файловой системы?
РЕДАКТИРОВАТЬ: Поскольку вы используете 64-разрядное ядро, ограничение 2 ГБ гораздо менее вероятно.
Вы проверили (с помощью sha256sum или аналогичного), что файл.rpm в удаленной системе соответствует файлу в вашей системе разработки?