CentOS如何使用FPM制作RPM包

爱是小Y

爱是小Y

2016-02-19 09:48

人生本是一个不断学习的过程,在这个过程中,图老师就是你们的好帮手,下面分享的CentOS如何使用FPM制作RPM包懂设计的网友们快点来了解吧!

在Linux系统中,RPM包的制作是很困难的,其实使用工具就能快速制作RPM包,简单易学,下面图老师小编就给大家介绍下Linux使用FPM制作RPM包的方法,感兴趣的朋友可以来了解一下。

 CentOS如何使用FPM制作RPM包

一、我们来先安装FPM:

# FPM是Ruby模块

yum -y install ruby rubygems ruby-devel

# 添加淘宝的Ruby仓库

gem sources -a http://ruby.taobao.org/

# 移除原生的Ruby仓库

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

# 安装fpm

gem install fpm

二、官网介绍了用FPM打deb包,我来翻译成rpm版:

# 去nodejs官网下载最新源码包

wget http://nodejs.org/dist/v0.10.12/node-v0.10.12.tar.gz

# 解压

tar zxvf node-v0.10.12.tar.gz -C /dev/shm/

# 进入源码目录

cd /dev/shm/node-v0.10.12/

# 指定配置参数

。/configure --prefix=/usr --dest-cpu=x64 --dest-os=linux

# 使用多核编译

make -j24

mkdir /dev/shm/node-root

# 指定安装路径

make -j24 install DESTDIR=/dev/shm/node-root

# 生成RPM

fpm -f -s dir -t rpm -n nodejs --epoch 0-v 0.10.12--iteration 1.el6-C /dev/shm/node-root -p ~/rpmbuild/RPMS/x86_64/-d ‘openssl 》= 0.9.8’-d ‘libstdc++ 》= 4.4.3’--verbose --category ‘Development/Languages’--description ‘Node.js real-time applications’--url ‘nodejs.org’--license ‘BSD’-m ‘higkoo’--no-rpm-sign --workdir /dev/shm usr/bin usr/lib usr/share

# 查看RPM包信息

rpm -qpi ~/rpmbuild/RPMS/x86_64/nodejs-0.10.12-1.el6.x86_64.rpm

三、查看安装包信息:

 CentOS如何使用FPM制作RPM包

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/diannaorumen/)

小技巧:‘-e’ 参数支持打包之前手动修改FPM自动生成的SPEC文件,然后再打包。不过注意CentOS5和CentOS6之间的rpm包不能混用,因为他们之间的glibc版本不同,动态库链接不上。

概述

自从使用自建的YUM仓库后,安装工具变的简便快速,而且方便统一管理软件的版本。自建的YUM仓库还可以结合cobbler,实现定制化的系统安装。

安装FPM

yum -y install ruby ruby-devel rubygems # FPM是Ruby模块

gem sources -a http://ruby.taobao.org/ # 添加淘宝的Ruby仓库

gem sources --remove http://rubygems.org/ # 移除原生的Ruby仓库

# 安装fpm

gem install fpm

官方的示例打包nodejs

wget http://nodejs.org/dist/v0.10.12/node-v0.10.12.tar.gz #下载nodejs源码包

tar zxvf node-v0.10.12.tar.gz -C /dev/shm/ # 解压

cd /dev/shm/node-v0.10.12/ # 进入源码目录

。/configure --prefix=/usr --dest-cpu=x64 --dest-os=linux # 指定配置参数

make

mkdir /dev/shm/node-root

make install DESTDIR=/dev/shm/node-root # 指定安装路径

fpm -f -s dir -t rpm -n nodejs --epoch 0 -v 0.10.12 --iteration 1.el6 -C /dev/shm/node-root -p /root/ -d ‘openssl 》= 0.9.8’ -d ‘libstdc++ 》= 4.4.3’ --verbose --category ‘Development/Languages’ --description ‘Node.js real-time applications’ --url ‘nodejs.org’ --license ‘BSD’ -m ‘lxcong’ --no-rpm-sign usr/bin usr/lib usr/share # 生成RPM 注意usr/bin usr/lib usr/share 这些就是需要打包的数据目录

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/diannaorumen/)

rpm -qpi /root/nodejs-0.10.12-1.el6.x86_64.rpm # 查看RPM包信息

参数含义

-s 指定INPUT的数据类型

-t 指定需要制作成什么包,可选项有(deb, rpm, solaris, etc)

-n 包名

--iteration 也就是rpm包里面的release

-C 就是打包的相对路径,类似于buildroot。譬如-C /dev/shm/node-root/ 而打包机器的数据包路径是/dev/shm/node-root/usr/bin/node 那安装这个rpm包后,在本地的数据就是/usr/bin/node

上面就是Linux使用FPM制作RPM包的方法介绍了,需要注意的是,制作的RPM包不能在不同的系统中混用,会导致动态库链接不上。

展开更多 50%)
分享

猜你喜欢

CentOS如何使用FPM制作RPM包

电脑入门
CentOS如何使用FPM制作RPM包

CentOS系统中RPM软件包操作指南

电脑入门
CentOS系统中RPM软件包操作指南

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

如何安装.src.rpm软件包:

Linux Linux命令 Linux安装 Linux编程 Linux桌面 Linux软件 Linux内核 Linux管理
如何安装.src.rpm软件包:

RPM 的使用

Linux Linux命令 Linux安装 Linux编程 Linux桌面 Linux软件 Linux内核 Linux管理
RPM 的使用

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

如何从Linux源码创建RPM或DEB包

电脑入门
如何从Linux源码创建RPM或DEB包

如何管理CentOS账户

电脑入门
如何管理CentOS账户

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

五种 JSP页面跳转方法详解

五种 JSP页面跳转方法详解

Linux使用Sosreport命令生成报告的方法

Linux使用Sosreport命令生成报告的方法
下拉加载更多内容 ↓