Welcome 微信登录

首页 / 操作系统 / Linux / CentOS RPM包制作原理

有时候为了部署自己的包更方便一些,我们会制作自己的RPM包,制作RPM包都有哪些步骤呢,学习这些步骤就是本文的目的。在CentOS下制作RPM包依赖rpm-build这个包,所以需要提前安装好该软件包。RPM生成要素
  1. 生成rpm所用的文件列表或者源代码
  2. 根据文件列表或者源代码生成rpm规范,也就是spec文件
  3. 根据spec文件加工源码/文件的工具rpmbuild
在RedHat下,rpm包的默认制作路径在/usr/src/redhat下:/usr/src/redhat
--BUILD #编译之前,如解压包后存放的路径
--BUILDROOT #编译后存放的路径
--RPMS #打包完成后rpm包存放的路径
--SOURCES #源包所放置的路径
--SPECS #spec文档放置的路径
--SPRMS #源码rpm包放置的路径centos并没有该目录,这可咋办,其实在那个目录制作rpm是没有关系的,只要设置好配置文件就行。一般我们都把源码打包成tar.gz格式然后存放于SOURCES路径下,而在SPECS路径下编写spec文档,通过命令打包后,默认会把打包后的rpm包放在RPMS下,而源码包会被放置在SRPMS下。先看看rpmbuild命令的用法:1 从spec文档建立有以下选项:-bp  #只执行spec的%pre 段(解开源码包并打补丁,即只做准备)
-bc  #执行spec的%pre和%build 段(准备并编译)
-bi  #执行spec中%pre,%build与%install(准备,编译并安装)
-bl  #检查spec中的%file段(查看文件是否齐全)
-ba  #建立源码与二进制包(常用)
-bb  #只建立二进制包(常用)
-bs  #只建立源码包2 从tarball包建立,与spec类似-tp #对应-bp
-tc #对应-bc
-ti #对应-bi
-ta #对应-ba
-tb #对应-bb
-ts #对应-bs3 从源码包建立--rebuild  #建立二进制包,通-bb
--recompile  #同-bi* rpmbuild的其他参数--buildroot=DIRECTORY  #确定以root目录建立包
--clean  #完成打包后清除BUILD下的文件目录
--nobuild  #不进行%build的阶段
--nodeps  #不检查建立包时的关联文件
--nodirtokens
--rmsource  #完成打包后清除SOURCES
--rmspec #完成打包后清除SPEC
--short-cricuit
--target=CPU-VENDOR-OS #确定包的最终使用平台相关阅读:制作自己的rpm包 http://www.linuxidc.com/Linux/2013-06/86435.htmLinux 下rpm安装后的目录结构和一些配置 http://www.linuxidc.com/Linux/2013-06/85761.htmrpm与yum的综合性介绍与示例演示 http://www.linuxidc.com/Linux/2013-05/84480.htmRedhat Linux---rpm 命令详解 http://www.linuxidc.com/Linux/2013-03/81971.htm
  • 1
  • 2
  • 下一页
Linux普通用户利用authbind绑定特权端口15分钟学会使用Git和远程代码库相关资讯      RPM  Centos RPM包制作 
  • 如何制作RPM包  (今 20:16)
  • RPM包制作方法  (08/16/2015 09:45:43)
  • rpm 4.13.0 发布下载,RPM 包管理  (06/25/2015 08:29:08)
  • 从CentOS安装R中看yum、rpm、repo  (12/18/2015 14:48:10)
  • CentOS 中如何快速定制二进制的内  (07/20/2015 21:45:29)
  • rpm包指定安装路径  (05/25/2015 20:06:28)
本文评论 查看全部评论 (0)
表情: 姓名: 字数