简介
fpm:对包的类型进行转换,从一种类型转换到另一种类型
1安装环境
fpm是ruby写的,系统环境需要rbuy
1
|
yum
install
-y ruby ruby-devel rubygems rpm-build
|
2 安装fpm
1
|
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示例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
[root@localhost
test
]
# tar -xf tengine-2.1.2.tar.gz
[root@localhost
test
]
# cd tengine-2.1.2
[root@elkserver tengine-2.1.2]
# ./configure --prefix=/tmp/nginx
[root@elkserver tengine-2.1.2]
# make
[root@elkserver tengine-2.1.2]
# mkdir /root/install/nginx
[root@elkserver tengine-2.1.2]
#make install DESTDIR=/root/install/nginx
[root@elkserver tengine-2.1.2]
# ls /root/install/nginx/
tmp
[root@localhost
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/
[root@elkserver ~]
# 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,安装
1
2
3
4
5
6
7
8
|
[root@elkserver ~]
# rpm -ivh tengine-2.1.2-1.x86_64.rpm
Preparing...
################################# [100%]
Updating / installing...
1:tengine-2.1.2-1
################################# [100%]
[root@elkserver ~]
# ls /opt/app/
nginx
[root@elkserver ~]
# ls /opt/app/nginx/
conf html include logs modules sbin
|
本文转自crazy_charles 51CTO博客,原文链接http://blog.51cto.com/douya/1878549:,如需转载请自行联系原作者