FPM定制RPM包
安装FPM
FPM是ruby写的打包工具,ruby版本要大于1.8.5
#安装ruby环境和gem包管理器
[root@test88 ~]# yum install -y ruby rubygems ruby-devel #查看并替换rubygem仓库
[root@test88 ~]# gem sources list
[root@test88 ~]# gem source --add http://gems.ruby-china.org/ --remove http://rubygems.org/ #安装fpm CentOS6,由于ruby版本不够,故安装低版本json和fpm
[root@test88 ~]# gem install json -v 1.8.3
[root@test88 ~]# gem install fpm -v 1.3.3
#CentOS7
[root@test88 ~]# gem install fpm
FPM基本参数
1. -s 指定源类型
2. -t 指定目标类型,即想要制作为什么包
3. -n 指定包的名字
4. -v 指定包的版本号
5. -C 指定打包的相对路径 Change directory to here before searching forfiles
6. -d 指定依赖于哪些包
7. -f 第二次打包时目录下如果有同名安装包存在,则覆盖它
8. -p 输出的安装包的目录,不想放在当前目录下就需要指定
9. --post-install 软件包安装完成之后所要运行的脚本;同--after-install
10. --pre-install 软件包安装完成之前所要运行的脚本;同--before-install
11. --post-uninstall 软件包卸载完成之后所要运行的脚本;同--after-remove
12. --pre-uninstall 软件包卸载完成之前所要运行的脚本;同--before-remove
实例:定制NginxRPM包
#1.编写脚本
[root@test88 ~]# mkdir /server/scripts -p
[root@test88 ~]# cd /server/scripts/
[root@test88 ~]# vim nginx_rpm.sh
#!/bin/bash
id nginx > /dev/null 2>&1
if [ $? -ne 0 ];then
useradd nginx -s /sbin/nologin -M
ln -s /application/nginx-1.6.3/ /application/nginx #2.进行打包
[root@test88 scripts]# fpm -s dir -t rpm -n nginx -v 1.6.3 -d 'pcre-devel,openssl-devel' --post-install /server/scripts/nginx_rpm.sh -f /application/nginx-1.6.3/
FPM定制RPM包的更多相关文章
- FPM定制RPM包实践
1.1 快速部署方案 ✔ 问题:当领导给你 100 台已经安装好系统的服务器,然后让优化,让你提出一个快速部署方案. 解答: 1.tar 打包 先编译安装 打包-->分发-->解包(比如 ...
- 利用fpm定制rpm包
环境说明 系统版本 CentOS 6.9 x86_64 软件版本 fpm-1.4.0 1.安装ruby环境 fpm利用ruby编程语言开发,先安装ruby的环境 [root@m01 ~]# ...
- 自动化部署必备技能—部署yum仓库、定制rpm包
部署yum仓库.定制rpm包 目录 第1章 扩展 - yum缓存 1.1 yum缓存使用步骤... 1 1.1.1 导言... 1 1.1.2 修改配置文件... 1 1.1.3 使用缓存... 1 ...
- 搭建yum仓库与定制rpm包
笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 当我们自动化部署集群的时候,想要快速的安装所有服务,搭建yum仓库与定制rpm包是我们首先要做的 原创作品,转载请 ...
- 利用fpm制作rpm包
使用fpm制作rpm包 安装如下 [root@web01 ~]# yum install -y gcc zlib zlib-devel wget http://ruby.taobao.org/mirr ...
- FPM简介(定制rpm包)
FPM简介 fpm是生成rpm包的工具.rpm包的制作,采用fpm工具完成,FPM非常易用,此命令可以把rpm包的安装.卸载做得更加优雅,在安装前可以做一些准备工作,安装后可以做一些收尾工作,在卸载前 ...
- fpm 制作 rpm 包
支持的 源类型包 ① dir : 将目录打包成所需要的类型, 可用于源码编译安装软件包 ② rpm : 对 rpm 包进行转换 ③ gem : 对 rubygem 包进行转换 ④ python : 将 ...
- linux系统之定制rpm包
FPM打包工具 FPM的作者是jordansissel FPM的github:https://github.com/jordansissel/fpm FPM功能简单说就是将一种类型的包转换成另一种类型 ...
- fpm制作rpm包
一.前言 在企业中我们有事安装软件包.部分都是源码安装,如nginx安装路径都已经固化了,但实际业务中,我们都是把软件包安装到固定目录下,不满足需要,这是其一.其二,编译安装很耗时,比如mysql,特 ...
随机推荐
- BZOJ4939 Ynoi2016掉进兔子洞(莫队+bitset)
容易发现要求三个区间各数出现次数的最小值.考虑bitset,不去重离散化后and一发就可以了.于是莫队求出每个区间的bitset.注意空间开不下,做多次即可.输出的东西错了都能调一年服了我了. #in ...
- 洛谷 P5078 Tweetuzki 爱军训
题目连接 很明显,1e6的范围,要么nlgn要么O(n) nlgn的话可能会想到借助一些数据结构,我并没有想到这种做法 对于这种题,O(n)的做法要么是线性递推,要么就应该是贪心了 考虑这道题我们怎么 ...
- 【BZOJ2216】Lightning Conductor(动态规划)
[BZOJ2216]Lightning Conductor(动态规划) 题面 BZOJ,然而是权限题 洛谷 题解 \(\sqrt {|i-j|}\)似乎没什么意义,只需要从前往后做一次再从后往前做一次 ...
- Redis Scan迭代器遍历操作原理(一)
Redis在2.8.0版本新增了众望所归的scan操作,从此再也不用担心敲入了keys*, 然后举起双手看着键盘等待漫长的系统卡死了··· 命令的官方介绍在这里, 中文版由huangz同学细心翻译了, ...
- Codeforces 576C. Points on Plane(构造)
将点先按x轴排序,把矩形竖着划分成$10^3$个块,每个块内点按y轴排序,然后蛇形走位上去. 这样一个点到下一个点的横坐标最多跨越$10^3$,一共$10^6$个点,总共$10^9$,一个块内最多走$ ...
- 洛谷P1558 色板游戏
题目背景 阿宝上学了,今天老师拿来了一块很长的涂色板. 题目描述 色板长度为L,L是一个正整数,所以我们可以均匀地将它划分成L块1厘米长的小方格.并从左到右标记为1, 2, ... L.现在色板上只有 ...
- hihocoder #1584 : Bounce
题意; 有一个n*m的网格阵,球从左上角开始在网格中碰撞,碰到边界就直角反弹,到达格子的角落结束,求途中经过一次的格子数. 代码: //神马规律啊,设x表示球与垂直面的撞击次数,y为球与水平墙面的撞击 ...
- mysql 给用户赋值权限
解决办法 grant all privileges on *.* to joe@localhost identified by '1'; flush privileges; 拿 joe 1 登陆 附: ...
- github访问很慢的问题
公司一直用着svn, 之前也的确用过github的版本管理,但是一直都是可视化的操作 这几天面试了几名前端,问了一下发现他们在之前的公司里都是用git的, 于是今天好好温故了一下怎么用命令行进行一下g ...
- poi对word的操作(总结)
★★★ POI在读写word docx文件时是通过xwpf模块来进行的,其核心是XWPFDocument. 1.正文段落:一个文档包含多个段落Paragraph,一个段落包含多个Runs,一个R ...