2018/4/12 定制rpm包、搭建yum仓库-GeorgeKai的博客-51CTO博客
http://blog.51cto.com/13055758/2072045 1/4
原创 GeorgeKai 2018-02-21 17:43:22 评论(0) 565人阅读
定制rpm包、搭建yum仓库
一、定制rpm包
1、环境
[root@m01 ~]# cat /etc/redhat-release
CentOS release 6.9 (Final)
[root@m01 ~]# uname -r2.6.32-696.el6.x86_64
[root@m01 ~]# /etc/init.d/iptables status
iptables: Firewall is not running.
[root@m01 ~]# getenforce
Disabled
[root@m01 ~]# hostname -I172.19.5.61 172.16.1.61
yum install ruby rubygems ruby-devel -y #安装ruby模块
gem sources -a http://mirrors.aliyun.com/rubygems/ #添加国内源
gem sources --remove http://rubygems.org/ #移除原生的Ruby仓库
gem install fpm #安装fpmgem install fpm -v 1.4.0
错误:Building native extensions. This could take a while...
Building native extensions. This could take a while...
ERROR: Error installing fpm:解决:安装旧版本的fpm #fpm安装时提示安装ruby >=1.9,参考
http://blog.51cto.com/13055758/2072043
gem install fpm -v 1.4.0
3、FPM命令参数介绍
1
2
3
4
5
6
7
8
9
fpm --help
-s 指定源类型
-t 指定目标类型,既想要制作成什么包
-n 指定包的名字
-v 指定包的版本号
-C 指定打包的相对路径
-d 指定依赖于哪些包
-f 第二次打包时目录下如果有同名安装包存在,则覆盖它
-p 输出安装包的目录,不想放在当前目录下就需要指定
二、FPM实战打包NMP
1、实战打包Nginx
fpm -s dir -t rpm -n nginx -v 1.12.2 -d 'pcre-devel,openssl-devel' --post-
install /server/scripts/nginx_rpm.sh /application/nginx-1.12.2
fpm -s dir -t rpm -n php -v 5.5.32 -d 'zlib libjpeg freetype libpng gd curl zlib-
devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-
devel libjpeg-turbo-devel libcurl-devel libxslt-devel libmcrypt-
devel mhash mcrypt' --post-install /server/scripts/php_rpm.sh -f /application/php-
5.5.32/