文档章节

ceph-deploy源码制作rpm包 <转>

banwh
 banwh
发布于 2017/08/23 12:55
字数 611
阅读 12
收藏 0
点赞 0
评论 0

ceph-deploy源码制作rpm包

原文:http://www.hl10502.com/2017/06/09/ceph-deploy-rpmbuild/#more

rpm编译打包的步骤:

  • 修改代码中的setup.cfg文件中的版本号
  • 代码setup.cfg同级目录下增加PKG-INFO文件,并修改版本号与setup.cfg中保持一致(PKG-INFO文件可以从项目的.egg-info文件夹获取,或者从centsos的rpm源码参考)
  • 将代码加上版本号重名并打成.tar.gz包
  • 将.tar.gz文件、spec脚本项目下的文件(.spec文件除外)copy到用户的rpmbuild/SOURCES目录
  • 将.spec文件copy到用户的rpmbuild/SPECS
  • 执行 rpmbuild –ba [spec文件] 来打包二进制包和源码包

 

环境准备

  • CentOS Linux release 7.2.1511 (Core)
  • ceph-deploy-1.5.36-0.src.rpm

创建用户

为了安全单独创建一个用户ceph来制作rpm

 

1

 

[root@node ~]# useradd ceph

 

设置用户ceph的密码

 

1

2

3

4

5

6

 

[root@node ~]# passwd ceph

Changing password for user ceph.

New password:

BAD PASSWORD: The password fails the dictionary check - it is too simplistic/systematic

Retype new password:

passwd: all authentication tokens updated successfully.

 

创建rpmbuild目录

切换帐号

 

1

 

[root@node ~]# su ceph

 

添加一个配置文件,并设置编译的根目录为 ~/rpmbuild

 

1

 

[root@node root]$ vi ~/.rpmmacros

 

添加内容
%_topdir /home/ceph/rpmbuild/
:wq保存退出

在编译根目录下创建我们需要的目录

 

1

2

3

4

5

6

7

8

9

10

 

[root@node root]$ cd ~

[root@node ~]$ mkdir rpmbuild

[root@node ~]$ cd ~/rpmbuild

[root@node rpmbuild]$ mkdir -pv {BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}

mkdir: created directory ‘BUILD’

mkdir: created directory ‘BUILDROOT’

mkdir: created directory ‘RPMS’

mkdir: created directory ‘SOURCES’

mkdir: created directory ‘SPECS’

mkdir: created directory ‘SRPMS’

 

rpmbuild目录下的六个文件目录分别为

BUILD 源代码解压后的存放目录
BUILDROOT 编译临时目录
RPMS    制作完成后的RPM包存放目录,里面有与平台相关的子目录
SOURCES 收集的源材料,补丁的存放位置
SPECS   SPEC文件存放目录
SRMPS   存放SRMPS生成的目录

编译rpm包

将修改后的代码目录ceph-deploy-1.5.36打成.tar.bz2文件

 

1

2

 

[root@node ~]# cd /opt

[root@node ~]# tar jcf ceph-deploy-1.5.36.tar.bz2 ceph-deploy-1.5.36

 

将ceph-deploy-1.5.36.tar.bz2复制到/home/ceph/rpmbuild/SOURCES目录

 

1

 

[root@node ~]# cp /opt/ceph-deploy-1.5.36/ceph-deploy-1.5.36.tar.bz2 /home/ceph/rpmbuild/SOURCES

 

将ceph-deploy.spec复制到/home/ceph/rpmbuild/SPECS目录

 

1

 

[root@node ~]# cp /opt/ceph-deploy-1.5.36/ceph-deploy.spec /home/ceph/rpmbuild/SPECS

 

编译打包

 

1

2

3

 

[root@node ~]# su ceph

[root@node root]$ cd /home/ceph/rpmbuild/SPECS

[root@node SPECS]$ rpmbuild -ba ceph-deploy.spec

 

执行完成之后,
在/home/ceph/rpmbuild/SRPMS/ 生成源码包
在/home/ceph/rpmbuild/RPMS/noarch/ 生成二进制包ceph-deploy-1.5.36-0.noarch.rpm

 

 

© 著作权归作者所有

共有 人打赏支持
banwh
粉丝 1
博文 52
码字总数 78166
作品 0
海淀
程序员
Preflight【预检】

预检(内容提要) 1. Ceph Node Setup(CEPH节点设置) 2. Ceph Deploy Setup(CEPH部署设置) 2.1 Advanced Package Tool (APT) 2.2 Red Hat Package Manager (RPM) 3. Summary(总结) 预检......

天空冰雨 ⋅ 2015/03/30 ⋅ 0

ceph一些需要注意的地方

Ceph Kernel Client: We currently recommend: • v3.6.6 or later in the v3.6 stable series • v3.4.20 or later in the v3.4 stable series 软件包都用 release.asc 密钥加密签名过,把我......

壬癸甲乙 ⋅ 2014/07/16 ⋅ 0

Ceph安装--jewel版本

软件环境 系统:Centos7.2 Ceph版本:jewel 10.2.1 主机 ip 主机名 ceph1 192.168.13.212 bdc212 ceph2 192.168.13.213 bdc213 ceph3 192.168.13.214 bdc214 系统环境配置 1.1 修改主机名 # ......

哓竹 ⋅ 2016/06/16 ⋅ 0

使用ceph-deploy安装时出错

@oscfox 你好,想跟你请教个问题:我现在使用deploy部署执行ceph-deploy new agent4时报错,但是生成ceph.conf文件了,执行ceph-deploy install agent4 agent2 agent1时,又报错,错误如下,...

风之子668 ⋅ 2014/12/24 ⋅ 6

基于centos6.7的Ceph分布式文件系统安装指南

转载自 http://blog.csdn.net/yhao2014/article/details/51394815?locationNum=4&fps=1 centos6.8成功部署,感谢原作者,文章简洁明了,非常适合新手学习部署。 本文修改了一些失效的下载链接...

linux_wei ⋅ 2017/02/20 ⋅ 0

Ceph入门----CentOS7部署ceph三节点分布式存储系统

1.Ceph集群环境 使用3台虚拟机,包括其中1个admin节点,三台虚拟机同时承担3个monitor节点和3个osd节点 操作系统采用CentOS Minimal 7 下载地址:http://124.205.69.134/files/4128000005F9F...

三石头 ⋅ 2017/09/20 ⋅ 0

CentOS7.1配置Ceph集群环境

一、环境准备工作 (1) 节点要求 ==》节点配置硬件最低要求 角色 设备 最小配置 推荐配置 ----------------------------------------------------------------------------------------------...

dhb_oschina ⋅ 2016/03/14 ⋅ 0

ceph-deploy部署节点时安装出错

centOS6.4,各节点ssh免密码,均使用root权限,防火墙关闭,在管理节点远程部署ceph01节点时报错,错误信息如下: [ceph01][INFO ] Running command: rpm --import https://ceph.com/git/?p=...

AndrewSun ⋅ 2015/01/05 ⋅ 3

Installation【快速安装】

Installation【快速安装】 第1步:预检 在部署Ceph分布式存储集群,Ceph客户端和Ceph的节点之前,可能需要一些基本的配置工作。您还可以利用在Ceph的社区帮助文件的“入门”中获取帮助。 Pr...

天空冰雨 ⋅ 2015/03/25 ⋅ 0

ceph文件系统安装配置

ceph文件系统安装配置 1 前言 Ceph是一种为优秀的性能、可靠性和可扩展性而设计的统一的、分布式文件系统。 l Ceph OSDs: Ceph OSD 守护进程( Ceph OSD )的功能是存储数据,处理数据的复制...

旋风桃子 ⋅ 2017/09/19 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

idea 整合 vue 启动

刚学习Vue 搭建了一个项目 只能命令启动 Idea里面不会启动 尝试了一下修改启动的配置 如下: 1.首先你要保证你的package.json没有修改过 具体原因没有看 因为我改了这个name的值 就没办法启动...

事儿爹 ⋅ 15分钟前 ⋅ 0

数据仓库技术概述(一看就是架构师写的,对我极其有用)

ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract)、交互转换(transform)、加载(load)至目的端的过程。ETL一词较常用在数据仓库,但其对象并不限于...

gulf ⋅ 16分钟前 ⋅ 0

redis在windows环境的后台运行方法

在后台运行,首先需要安装redis服务,命令为 redis-server.exe --service-install redis.windows.conf --loglevel verbose 启动,命令为 redis-server --service-start 停止,命令为 redis-...

程序羊 ⋅ 18分钟前 ⋅ 0

比特币现金开发者提出新的交易订单规则

本周,四位比特币现金的四位开发者和研究员:Joannes Vermorel(Lokad),AmaurySéchet(比特币ABC),Shammah Chancellor(比特币ABC)和Tomas van der Wansem(Bitcrust)共同发表了一篇关...

lpy411 ⋅ 22分钟前 ⋅ 0

vue获取input输入框的数据

用惯了jQuery,突然使用vue感觉很不习惯,有很多不同的地方,感觉是两个不同的思想来写前端的代码。jQuery是使用选择器($)选取DOM对象,对其进行赋值、取值、事件绑定等操作。而Vue则是通过...

王子城 ⋅ 24分钟前 ⋅ 0

竟然这就是面向对象的游戏设计?!

从程序角度考虑,许多 JavaScript 都基于循环和大量的 if/else 语句。在本文中,我们可了解一种更聪明的做法 — 在 JavaScript 游戏中使用面向对象来设计。本文将概述原型继承和使用 JavaSc...

柳猫 ⋅ 29分钟前 ⋅ 2

git cmd git bash

刚用到了Git,看到windows环境下有两个命令输入窗口 第一个是可视化图形界面,第二个是CMD,第三个是Bash。 Git中的Bash是基于CMD的,在CMD的基础上增添一些新的命令与功能。所以建议在使用的...

东东笔记 ⋅ 31分钟前 ⋅ 0

分布式系统CAP和Base

1、分布式系统 1.1 简介 由多台计算机和通信的软件组件通过计算机网络连接(本地网络或广域网)组成。分布式系统是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的...

xixingzhe ⋅ 42分钟前 ⋅ 0

查看磁盘占用情况

记一次jenkins构建失败的问题 Build step 'Send build artifacts over SSH' changed build result to UNSTABLE 网上查资料都没明确表明是什么错,回忆之前处理这样的问题。第一时间想到的是不...

ManderSF ⋅ 43分钟前 ⋅ 0

数据库管理提速:SQL解析的探索与应用

前言: SQL解析是一项复杂的技术,一般都是由数据库厂商来掌握,当然也有公司专门提供SQL解析的API。SQL解析与优化是属于编译器范畴,和C语言等其他语言的解析没有本质的区别。其中分为词法分...

java高级架构牛人 ⋅ 50分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部