Centos7进行指定RPM打包与解压

这里以tomcat文件为例,把tomcat文件安装至/otp/zczp/目录中


1、工具安装

RPM打包使用的是rpmbuild命令,需要安装一下工具

yum install make
yum install gcc
yum install rpm-build

2、创建制作rpm的工作目录

在主目录建立文件夹rpmbuild,改目录下在创建6个目录,执行命令:

mkdir -p rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}

各个目录的一般用途如下简介:

BUILD 	    编译rpm包的临时目录 	
BUILDROOT   编译后生成的软件临时安装目录
RPMS 	    最终生成的可安装rpm包的所在目录
SOURCES     所有源代码和补丁文件的存放目录
SPECS 	    存放SPEC文件的目录(重要)
SRPMS 	    软件最终的rpm源码格式存放路径

3、打包文件配置

创建安装路径,将安装文件(tomcat)移至目录下,并打包,把打包文件移至SOURCES文件中,执行命令:

mkdir -p tomcat-1.0/opt/zczp   
mv tomcat tomcat-1.0/opt/zczp/
tar fvzc tomcat-1.0.tar.gz  tomcat-1.0
mv tomcat-1.0.tar.gz rpmbuild/SOURCES/

注 意 : t o m c a t − 1.0 为 软 件 名 称 和 版 本 , 要 和 下 面 s p e c 内 容 对 应 \color{red}{注意:tomcat-1.0为软件名称和版本,要和下面spec内容对应} tomcat1.0spec

4、设置spec文件

创建spec文件,并保存。执行 vim rpmbuild/SPECS/tomcat.spec 内容如下:

Name: tomcat
Version: 1.0
Release: 1%{?dist}
Summary: tomcat package
License: GPL
Group: Applications/System
Vendor: Tips5
URL:http://www.tipfocus.com
SOURCE: %{name}-%{version}.tar.gz
Packager: [email protected]
AutoReqProv: no

%description
zczp package
%prep
rm -rf $RPM_BUILD_ROOT/*
%setup -q
%install
install -d $RPM_BUILD_ROOT/
cp -a * $RPM_BUILD_ROOT/
%files
%defattr(-,root,root,-)
/opt/zczp
%doc
%changelog

这里需要注意属性,根据自己情况填写:

Name: 软件包的名称,后面可使用%{name}的方式引用
Version:软件的实际版本号,后面可使用%{version}引用
Summary:软件包的内容概要
Source:源代码包,可以带多个用Source1、Source2等源
URL: 软件的主页

5、编译成为RPM

输入如下命令,在最后出现exit 0表示生成成功。
rpmbuild -ba rpmbuild/SPECS/tomcat.spec
生成rpm文件在rpmbuild/SRPM/X86_64/(rpmbuild/SRPMS/)目录可查看。

你可能感兴趣的:(Centos)