记录一次学习制作二进制rpm包的过程
执行下面的几条命令,安装 创建rpm-build 及 制作目录
yum install rpm-buiild
yum install rpmdevtools
rpmdev-setuptree
在当前用户目录下生成了如下目录结构

source 是 打包资源路径
SPECS 是 编译二进制文件路径
RPMS是编译生成的二进制包路径
SRPMS 是 生成源码包的路径
先把我想要打包RPM的文件或者应用 搞成一个 tar.gz 包 ,注意一下tar.gz的名字 需要跟最终生成的rpm包名字一致。放到Build目录下
rpm包的命名应该是name-version-release.架构.npm
然后cd SPECS目录
创建一个 igixnpm.spec 文件
添加如下内容,做一个二进制安装
Summary: test setup programs
Name:test
Version: 1.0.0
Release: 1
License: GPL
BuildRoot: %_topdir/BUILDROOT
Group: Applications/System
%description
this is a test server
%prep #预安装操作
%build #编译操作
%install #安装步骤
mkdir -p $RPM_BUILD_ROOT/root/test/
cd $RPM_BUILD_DIR
tar xzvf ../BUILD/test -1.0.0-1.x86_64.tar.gz
cp -R ../BUILD/test -1.0.0-1.x86_64/* $RPM_BUILD_ROOT/root/test/
%files #说明安装过程产生的 文件夹和文件,为后续卸载做准备(目前我是这么理解的,后续学习发现不对再回来改吧)
/root/test/
%post #rpm 安装完后执行的操作
cp /root/test/startup-linux.sh /root/test/test.sh
%preun #卸载前操作
%postun #卸载后操作
rm -rf /root/test
OK,现在我们去编译一个rpm包。在一开始创建的rpmbuild目录下,执行 rpmbuild -bb SPECS/igixnpm.spec
运行完成之后,在SRPMS目录下生成了一个rpm包
运行 rpm -ivh test -1.0.0-1.x86_64.rpm 在/root/test目录下生成了 对应的应用。

浙公网安备 33010602011771号