【发布时间】:2019-06-14 09:03:41
【问题描述】:
我有这个大小 > 4.9GB 的内部软件安装程序, 它安装了一堆 rpms/库并在最后设置了一些配置。 我需要使用 rpmbuild(我是这个 rpm 创建的新手)创建一个 RPM,以便安装 RPM 并继续安装/执行这个安装程序(它是一个 bash 文件)。
我的 rpm 规范目前正在执行此操作(您可以查看下面的代码):
%安装
- 将 2 个 zip 文件复制到特定文件夹中。 这是来自实际软件文件夹的 2 个 zip 文件,我只是将其拆分 内容分为两部分并压缩它们以避免最大尺寸限制(如果我是 4gbs 没错)。
%发布
将这些文件解压缩到特定文件夹中。
运行这些 zip 文件中的 bash 脚本安装程序(它将静默运行,因为它具有 -s 标志)。
成功完成 bash 和 rpm 安装。
我已经构建了 rpm,所以当我尝试:
yum 安装 .rpm,
它在 zip 部分做得很好,但在 bash 安装部分它永远什么都不做,可能是因为这个 rpm 锁定的东西,但我不确定。
顺便说一句,我完全不确定这是否是一个好的方法,我的意思是结合了这个 rpm 和安装的东西
所以因为 install.sh 部分给了我这个问题,所以我尝试了不同的更改:
sudo /root/sotfware/install.sh -silent /root/software/silent_configfile.conf
/root/sotfware/install.sh -silent /root/software/silent_configfile.conf
./root/sotfware/install.sh -silent /root/software/silent_configfile.conf
你们觉得我做错了什么? 最好的方法是什么?要么 您对此有何建议?
这是规范文件:
Name: software-19
Version: 1.0
Release: 1
Summary: software 2019
License: N/A
URL: https://
AutoReqProv: no
AutoReq: no
%description
Some description
%install
mkdir -p %{buildroot}/root/software2019
cp /root/software/software-1.zip %{buildroot}/root/software2019/software-1.zip
cp /root/software/software-2.zip %{buildroot}/root/software2019/software-2.zip
%post
unzip /root/software/software-1.zip -d /root/software2019/
unzip /root/software/software-2.zip -d /root/software2019/rpm/
sudo /root/software/install.sh -s /root/software2019/silent_configfile.conf
rm -rf /root/software/
%clean
rm -rf %{buildroot}
%files
/root/software/*
%changelog
* Tue Jan 20 2019 1.0
- Initial release
希望我很清楚,提前谢谢!
【问题讨论】:
-
如果你想了解更多关于包装的知识,那就去rpm-packaging-guide.github.io
标签: linux bash rpm yum rpmbuild