通过nginx源码包制作rpm包
2017-07-12 16:26
459 查看
文档信息: 文档作者:amunlinux 文档版本:Version 1.1 修改记录:2017-04-04 系统环境:CentOS 6.8 64 bit 一、通过nginx源码包制作rpm包 1.制作前环境准备: 安装依赖包 yum -y install rpm-build pcre-devel openssl-devel gccgcc-c++ make 2.创建普通用户 创建普通用户制作,使用普通用户制作rpm包(因为root权限太大); useraddlianlian passwdlianlian su– lianlian exit 退出不了,就用su 切换 将nginx包上传root/home/ mvnginx-1.6.2.tar.gz /home/lianlian su– lianlian llnginx-1.6.2.tar.gz 二、编写spec规则 有默认模板的,后缀为.spec 以下是模板的一部分内容,有的根本用不到。所以个别不用写,照着填就好 1.在模板里添加规则 vim nginx.spec 默认模板内容: Name 定义该 rpm 包的名字,必须要填写。 Version 定义该 rpm 包的版本号,建议和源码包的名称保持一致。 Release 1%{?dist}不需要管,系统会在版本号之后自动补齐,就是经常看到的rpm 名中的 el6 部分 Summary 定义关于该 rpm包的一些介绍。 Group 定义软件包所属类型。 License 软件授权类型,比如 GPL、Commercial、Shareware。 URL 定义软件作者的主页。 Source0: 定义需要用到的源码包名字 BuildRoot: 不需要管,系统用 mkstemp定义安装或编译时使用的虚拟目录 作 BuildRequires: 定义源码包配置时需要用到工具。该选项可有可无。 Requires: 定义rpm 安装的时候的依赖关系。该选项可有可无。 %description 定义描述信息,注意这里要另起一行写 %prep 定义 rpm 包安装前执行的脚本。在对软件进行打包前,我们还进行其他 操作。比如解压 tar.gz 文件。%prep 主要与%setup –q 命令配合使用,建议使用默 认值即可。 %setup –q 不需要管 %build 定义源码包的安装配置选项 %install 不需要管,系统执行安装动作 %files 定义安装完之后生成的目录,可以参考源码包安装完毕之后生成的目录 %config/usr/local/httpd/conf/* 代表配置文件 %post 定义 rpm 包安装后执行的脚本。我们在安装完毕 rpm 包后,执行软件初 始化的动作,就可以通过%post 来达到目的。比如:apache在安装后,将 apachectl 拷贝成 httpd 等操作。默认 spec 模版文件不存在此选项。 %preun 定义 rpm 包卸载前执行的脚本,该选项主要用于软件升级的时候会执行。 默认 spec 模版文件不存在此选项。 %postun 定义 rpm 包卸载后执行的脚本。默认 spec 模版文件不存在此选项。 %changelog 软件的变更日志。该选项可有可无。 2.关于保存*.spec报错的解决 上述规则编写完成后保存时会自动报一个错误,将会产生一个rpmduild的文件夹,但这是正常的。 2.1解决办法: 移动源码包和spec规则文件到rpmbuild文件夹下 cpnginx-1.6.2.tar.gz ./rpmbuild/SOURCES/ cp nginx.spec./rpmbuild/SPECS/ 2.2使用rpmbuild命令生成 rpm包 cd rpmbuild/SPECS/ 或在/home/下也可以 rpmbuild -ba nginx.spec -ba 是输出过程信息 三、在其他主机测试rpm包 1. 需要按照依赖包 yum -y installwireshark-gnome 2. 上传并安装nginx RPM包 [root@xurui~]# rpm -ivh nginx-1.6.2-lianlian.e16.x86_64.rpm Preparing... ########################################### [100%] 1:nginx ########################################### [100%] 3. 查看端口开启状态 [root@xurui~]# netstat -anpt |grep :80 tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 2130/nginx tcp 0 0 0.0.0.0:8009 0.0.0.0:* LISTEN 1276/rpc.statd 4. 查看rpm包信息 [root@xurui~]# rpm -qi nginx Name : nginx Relocations: (notrelocatable) Version : 1.6.2 Vendor: (none) Release : lianlian.e16 Build Date: 2017年04月04日 星期二 01时37分11秒 InstallDate: 2017年03月21日星期二 11时44分28秒 Build Host: xr-c6.8 Group : System nginx/Web Source RPM: nginx-1.6.2-lianlian.e16.src.rpm Size : 610255 License: GPL Signature : (none) URL : http://www.nginx.org Summary : This is nginx server Description: Systemnginx/web by lianlian [root@xurui~]# End
相关文章推荐
- 通过定制nginx的rpm包学习如何制作rpm安装包
- 阿里云ECS安装MySQL通过yum安装,rpm源码安装,navicat for mysql 无法远程连接解决办法 包括Tomcat,Nginx无法远程访问等
- 如何用nginx源码制作rpm包的详解
- Nginx实战基础篇六 通过源码包编译安装部署LNMP搭建Discuz论坛 推荐
- 通过修改源码来更改nginx的日期格式
- 使用rpm-build制作nginx的rpm包 推荐
- linux/centos下安装nginx(rpm安装和源码安装)详细步骤
- Nginx(二)通过SVN获得Nginx源码
- rpm包制作之——nginx
- 制作nginx的RPM包教程
- 通过fpm将源码打包成rpm
- linux/centos下安装nginx(rpm安装和源码安装)
- Nginx实战基础篇七 最新源码包通过脚本部署LAMP搭建Discuz论坛 推荐
- liunx服务(Nginx服务器 web服务器源码包和rpm 服务平滑升级)
- Centos下用tar源码包制作rpm包
- 利用src.rpm包修改源码后重新制作rpm包
- Centos下用tar源码包制作rpm包
- 包含源码的rpm包的安装和rpm包的制作
- 烂泥:Linux源码包制作RPM包之Apache
- 使用fpm制作nginx的rpm包