制作 Nginx的RPM包
- 应用场景
- 官方未提供RPM
- 官方RPM无法自定义
- 大量源码包 , 希望提供统一的软件管理机制
- 软件打包流程
- 准备源码软件
- 安装rpm-bulid
- 编写编译配置文件
- 编译RPM包
安装rpm-build
1) 安装rpm-build软件包
yum -y install rpm-build
2) 生成rpm-build目录结构
rpmbuild -ba nginx.spec #会报错,没有文件或目录
ls /root/rpmbuild #自动生成的目录结构
BUILD BUILDROOT RPMS SOURCES SPECS SRPMS
3) 准备工作 , 将源玛软件复制到 SOURCES 目录
[root@web1 ~]# cp nginx-1.22.1.tar.gz /root/rpmbuild/SOURCES/
4) 创建并修改SPEC配置文件
[root@web1 ~]# vim /root/rpmbuild/SPECS/nginx.spec
Name:nginx #源码包软件名称
Version:1.22.1 #源码包软件的版本号
Release: 10 #制作的RPM包版本号
Summary: nginx is a web server software. #RPM软件的概述
License:GPL #软件的协议
URL: www.test.com #网址
Source0:nginx-1.22.1.tar.gz #源码包文件的全称
#BuildRequires: #制作RPM时的依赖关系
Requires: pcre-devel openssl-devel #安装RPM时的依赖关系
%description
nginx is an HTTP and reverse proxy server. #软件的详细描述
%post
useradd nginx #非必需操作:安装后脚本(创建账户)
%prep
%setup -q #自动解压源码包,并cd进入目录
%build
./configure
make %{?_smp_mflags}
%install
make install DESTDIR=%{buildroot}
%files
%doc
/usr/local/nginx/* #对哪些文件与目录打包
%changelog