利用fpm制作rpm包
使用fpm制作rpm包
安装如下
[root@web01 ~]# yum install -y gcc zlib zlib-devel
wget http://ruby.taobao.org/mirrors/ruby/ruby-1.8.7-p358.tar.gz
wget http://files.rubyforge.vm.bytemark.co.uk/rubygems/rubygems-1.8.24.tgz
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release--.noarch.rpm
yum -y install rpm-build
tar xf ruby-1.8.-p358.tar.gz
tar xf rubygems-1.8..tgz
cd ruby-1.8.-p358
./configure --enable-pthread
make && make install
cd ../rubygems-1.8.
ruby setup.rb
cd ..
gem source -r http://rubygems.org/
gem source -a http://ruby.taobao.org/
gem sources -l
*** CURRENT SOURCES *** http://ruby.taobao.org/ gem install fpm # 制作rpm包, 需要提前编译好源码,这里是将整个目录打包成rpm包的
fpm -s dir -t rpm -v 5.5. -n MySQL -p /root/fpm/RPMS/x86_64/ --license GPL --verdor mysql -m rg_fan@.com --url http://mysql.com --description "mysql databases" --post-install /root/fpm/scripts/mysql-post-install.sh --pre-uninstall /root/fpm/scripts/mysql-pre-uninstall.sh --rpm-user mysql --rpm-group mysql --rpm-changelog /root/fpm/changelog/MySQL.log /usr/local/mysql/ # 帮助信息
-n 生成的package名字
-p 生成的package文件输出位置
-v 生成的package版本
-d, --depends 生成的package依赖于什么软件,通常为-d 'name' 或这 -d 'name > version'
-a 系统架构名称,如果是noarch则为'-a all' 或者 '-a native'
--license 许可证
--vendor
-m, --maintainer 制作人员 默认为 <用户@主机名>
--url
--description 软件包描述
--iteration 指定rpn包的制作版本号等信息 跟spec文件的Release 一样 .el6
--config-files 配置文件
--conflicts 与其他什么软件冲突
--post-install
--pre-install
--pre-uninstall
--post-uninstall
--rpm-user 安装后的目录或文件的属主,spec文件里面的%file段里面的用户
--rpm-group 安装后的目录或文件的属组,spec文件里面的%file段里面的组
--rpm-defattrfile 安装之后的文件权限
--rpm-defattrdir 安装之后的目录权限
--rpm-compression rpm的压缩算法 none xz bzip2 gzip
--rpm-changelog changelog文件
利用fpm制作rpm包的更多相关文章
- 利用fpm定制rpm包
环境说明 系统版本 CentOS 6.9 x86_64 软件版本 fpm-1.4.0 1.安装ruby环境 fpm利用ruby编程语言开发,先安装ruby的环境 [root@m01 ~]# ...
- fpm制作rpm包
一.前言 在企业中我们有事安装软件包.部分都是源码安装,如nginx安装路径都已经固化了,但实际业务中,我们都是把软件包安装到固定目录下,不满足需要,这是其一.其二,编译安装很耗时,比如mysql,特 ...
- fpm 制作rpm包
使用fpm命令制作rpm包并安装 工作中有如下情况需要将文件打包rpm: 避免重复工作,将源码程序打包为rpm 使用yum发布项目,项目打包为rpm 将自己写好的程序打包为rpm,提供给用户下载 其他 ...
- fpm 制作 rpm 包
支持的 源类型包 ① dir : 将目录打包成所需要的类型, 可用于源码编译安装软件包 ② rpm : 对 rpm 包进行转换 ③ gem : 对 rubygem 包进行转换 ④ python : 将 ...
- Linux基于FPM制作RPM包(以Nginx为例)
1.搭建Epel Yum源 安装在线yum源 [root@localhost ~]# rpm -ivh epel-release-latest-.noarch.rpm //安装扩展源 [root@ ...
- Nginx与Lua利用fpm打成rpm包
1.下载相关软件 需要软件有:Nginx,LuaJIT,ngx_devel_kit,ngx_lua等安装文件 安装Lua或者LuaJIT都是可以的,但是出于效率的考虑,推荐安装LuaJITshell& ...
- linux制作RPM包
制作rpm包 1.制作流程1.1 前期工作 1)创建打包用的目录rpmbuild/{BUILD,SPECS,RPMS, SOURCES,SRPMS} 建议使用普通用户,在用户家目录中创建 2)确定好制 ...
- 制作RPM包
RPM包制作过程 1.1 前期工作 1)创建打包用的目录rpmbuild/{BUILD,SPECS,RPMS, SOURCES,SRPMS} 建议使用普通用户,在用户家目录中创建 2)确定好制作的对象 ...
- fpm工具来制作rpm包软件
第1章 rpm包的制作 1.1 fpm的概念介绍 FPM功能简单说就是将一种类型的包转换成另一种类型 1.1.1.支持的源类型 类型 说明 dir 将目录打包成所需要的类型,可以用于源码编译安装的 ...
随机推荐
- Spring之InstantiationAwareBeanPostProcessor接口介绍
InstantiationAwareBeanPostProcessor接口是BeanPostProcessor的子接口,通过接口字面意思翻译该接口的作用是感知Bean实例话的处理器.实际上该接口的 ...
- MySQL中间件之ProxySQL(15):ProxySQL代理MySQL组复制
返回ProxySQL系列文章:http://www.cnblogs.com/f-ck-need-u/p/7586194.html 1.ProxySQL+组复制前言 在以前的ProxySQL版本中,要支 ...
- 数据可视化 seaborn绘图(2)
统计关系可视化 最常用的关系可视化的函数是relplot seaborn.relplot(x=None, y=None, hue=None, size=None, style=None, data=N ...
- C#静态成员静态类。
1. 在静态类中,所包含的所有成员必须是静态的.但不是所有静态成员都必须写在静态类中. 实例成员属于具体的对象,静态成员是属于类的.所以访问静态成员的时候不能通过对象来访问,只能通过类名直 ...
- EF 事务(转载)
事务简单用法 文章一:https://www.cnblogs.com/wujingtao/p/5407821.html 1EF事务 事务就是确保一次数据库操作,所有步骤都成功,如果哪一步出错了,整个操 ...
- EF中更新操作 ID自增但不是主键 ;根据ViewModel更新实体的部分属性
//ID自增但不是主键的情况 public int Update_join<TEntity>(TEntity entity) where TEntity : class { dbconte ...
- PHP按符号截取字符串的指定部分
字符串截取在php开发中是比较常用的:而且对于截取的需求也有很多种:就比如说对url链接的操作:http://baijunyao.com/article/12 有时我们想截取最后一个斜杠'/'后面的数 ...
- es6 语法 (对象扩展)
{ //简洁表示法 let o = 1; let k = 2; let es5 = { o:o, k:k }; let es6 = { o,k }; console.log(es5,es6); //1 ...
- 洛谷P4592 [TJOI2018]异或(可持久化01Trie)
题意 题目链接 可持久化01Trie板子题 对于两个操作分别开就行了 #include<bits/stdc++.h> using namespace std; const int MAXN ...
- html/css更改子级继承的父级属性
一个精美的网页需要的样式很多,在父级上设置的字体颜色或者大小,在其子元素中不一定全部相同,这时候要更改其中某一项的样式怎么办呢. 很多新手朋友就不明白,会迷惑为什么我使用class单独命名了,重新设置 ...