RPM包制作及yum仓库搭建

Posted 务必抓紧

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RPM包制作及yum仓库搭建相关的知识,希望对你有一定的参考价值。

RPM包制作

rpm包的制作是通过fpm软件来生成的,所以首先要安装fpm软件。又因为fpm的软件是ruby开发的,所以安装fpm的话首先要安装ruby等包

FPM功能简单说就是将一种类型的包转换成另一种类型。

FPM的github:https://github.com/jordansissel/fpm 

支持的源类型包:

 dir: 将目录打包成所需要的类型,可以用于源码编译安装的软件包

 rpm: 对rpm进行转换

 gem: 对rubygem包进行转换

 python: 将Python模块打包成相应的类型

1、安装fpm

 fpm 是 ruby写的,因此系统环境需要ruby,且版本必须大于1.8.5

yum  install ruby rubygems ruby-devel -y

 查看当前ruby源:

[[email protected] ~]# gem source -l
*** CURRENT SOURCES ***
http://rubygems.org/

 添加国内源

gem sources -a http://mirrors.aliyun.com/rubygems/

 移除国外源

gem sources --remove http://rubygems.org/

 安装制作rpm包的fpm工具

[[email protected] ~]# gem install fpm
Building native extensions.  This could take a while...
Building native extensions.  This could take a while...
ERROR:  Error installing fpm:
        ruby-xz requires Ruby version >= 1.9.3.

 安装fpm工具的时候报错,解决办法为:

#安装旧版本的fpm
[[email protected] ~]# gem install fpm -v 1.4.0
Successfully installed clamp-0.6.5
Successfully installed fpm-1.4.0
2 gems installed
Installing ri documentation for clamp-0.6.5...
Installing ri documentation for fpm-1.4.0...
Installing RDoc documentation for clamp-0.6.5...
Installing RDoc documentation for fpm-1.4.0...

 到此fpm工具安装完成

  FPM的常用参数:

-s:指定源类型
-t:指定目标类型,即想要制作为什么包
-n:指定包的名字
-v:指定包的版本号
-C:指定打包的相对路径
-d:指定依赖于哪些包
-f:第二次包时目录下如果有同名安装包存在,则覆盖它
-p:输出的安装包的目录,不想放在当前目录下就需要指定
--post-install:软件包安装完成之后所要运行的脚本;同--offer-install
--pre-install:软件包安装完成之前所要运行的脚本;同--before-install
--post-uninstall:软件包卸载完成之后所要运行的脚本;同--offer-remove
--pre-uninstall:软件包卸载完成之前所要运行的脚本;同—before-remove

2、制作rpm包

 

以上是关于RPM包制作及yum仓库搭建的主要内容,如果未能解决你的问题,请参考以下文章

安装软件包的三种方法rpm包介绍及工具用法yum用法及搭建本地仓库

安装软件包的三种方法rpm包介绍及工具用法yum用法及搭建本地仓库

安装软件包的三种方法rpm包介绍及工具用法yum用法及搭建本地仓库

rpm,yum,yum搭建本地仓库

本地yum仓库服务端搭建

yum搭建本地仓库更换国内源下载rpm包