fpm 制作rpm包

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了fpm 制作rpm包相关的知识,希望对你有一定的参考价值。


简介


fpm:对包的类型进行转换,从一种类型转换到另一种类型


1安装环境


fpm是ruby写的,系统环境需要rbuy

 

yum install -y ruby ruby-devel rubygems rpm-bu

ild


2 安装fpm

gem install fpm


3.常用语法


常用命令:


-a 系统架构名称,如果是noarch则为‘-a all‘ 或者 ‘-a native‘

 

-s:指定源类型


-t:指定目标类型,即想要制作为什么包


-n:指定包的名字


-v:指定包的版本号


-C:指定打包的相对路径


-d:指定依赖于哪些包


-f:第二次包时目录下如果有同名安装包存在,则覆盖它;


-p:制作的rpm安装包存放路径,不想放在当前目录下就需要指定;


--description 软件包描述


--conflicts 与其他什么软件冲突


--post-install:软件包安装完成之后所要运行的脚本;同--offer-install


--pre-install:软件包安装完成之前所要运行的脚本;同--before-install


--post-uninstall:软件包卸载完成之后所要运行的脚本;同--offer-remove


--pre-uninstall:软件包卸载完成之前所要运行的脚本;同—before-remove


--prefix:制作好的rpm包默认安装路径;


 

详情:fpm -h


4支持的目标类型包:


rpm: 转换为rpm包

deb: 转换为deb包

solaris: 转换为solaris包

puppet: 转换为puppet包


5示例

[[email protected] test]# tar -xf  tengine-2.1.2.tar.gz
[[email protected] test]# cd  tengine-2.1.2
[[email protected] tengine-2.1.2]# ./configure --prefix=/tmp/nginx 
[[email protected] tengine-2.1.2]# make
[[email protected] tengine-2.1.2]# mkdir /root/install/nginx 
[[email protected] tengine-2.1.2]#make install DESTDIR=/root/install/nginx
[[email protected] tengine-2.1.2]# ls /root/install/nginx/
tmp
[[email protected] test]#  fpm  -s dir -t rpm -n tengine -v 2.1.2  -p /root/ --description "build rpm package "  -C /root/install/nginx/tmp/   --prefix /opt/app/
[[email protected] ~]# rpm -qpl tengine-2.1.2-1.x86_64.rpm 
/opt/app/nginx/conf/browsers
/opt/app/nginx/conf/fastcgi.conf
/opt/app/nginx/conf/fastcgi.conf.default
/opt/app/nginx/conf/fastcgi_params
/opt/app/nginx/conf/fastcgi_params.default
/opt/app/nginx/conf/koi-utf
/opt/app/nginx/conf/koi-win
/opt/app/nginx/conf/mime.types
.
.
.
.


6,安装

[[email protected] ~]# rpm -ivh tengine-2.1.2-1.x86_64.rpm 
Preparing...                          ################################# [100%]
Updating / installing...
   1:tengine-2.1.2-1                  ################################# [100%]
[[email protected] ~]# ls /opt/app/
nginx
[[email protected] ~]# ls /opt/app/nginx/
conf  html  include  logs  modules  sbin


本文出自 “crazy_sir” 博客,请务必保留此出处http://douya.blog.51cto.com/6173221/1878549

以上是关于fpm 制作rpm包的主要内容,如果未能解决你的问题,请参考以下文章

利用fpm制作rpm包

RPM包制作及yum仓库搭建

FPM制作nginx rpm包

使用fpm制作rpm包

fpm 制作rpm包

速成制作rpm包