今天需要部署一个ceph L 版本12.2.12的环境,无奈最近公司网络无法访问到ceph官网,只能使用之前下载好的ceph-deploy-1.5.39版本,安装上之后一口老血喷了出来,没有mgr的部署选项。
无奈之下只能自己制作一个1.5.38版本的ceph-deploy包,借用从ceph-deploy-1.5.39-0.src.rpm
的源码包进行二进制安装包的制作,这里任何一个ceph-deploy的源码包都可以
- 将
ceph-deploy-1.5.39-0.src.rpm
放在自己设备的/home
目录下 - 执行
rpm -i ceph-deploy-1.5.39-0.src.rpm
会在当前用户目录下生成一个rpmbuild
文件夹
该文件夹包括一下几个子目录[root@bogon rpmbuild]# ll 总用量 0 drwxr-xr-x. 2 root root 6 6月 1 20:27 BUILD drwxr-xr-x. 2 root root 6 6月 1 20:27 BUILDROOT drwxr-xr-x. 2 root root 6 6月 1 20:27 RPMS drwxr-xr-x. 2 root root 39 6月 1 21:20 SOURCES drwxr-xr-x. 2 root root 30 6月 1 21:21 SPECS drwxr-xr-x. 2 root root 6 6月 1 20:27 SRPMS
- 我们进入
SOURCES
目录,该目录存放我们的源码[root@bogon rpmbuild]# ll SOURCES/ 总用量 116 -rw-rw-r--. 1 zhanghuigui zhanghuigui 115167 6月 1 21:18 ceph-deploy-1.5.38.tar.gz
- 我们将 从1.5.38的网站上下载的ceph-1.5.38的tar包放入该目录
因为下载下来的是tar.gz
格式,而我们需要tar.bz2
格式,所以执行如下操作即可
这里关于tar zxvf ceph-deploy-1.5.38.tar.gz #解压压缩包 tar jcvf ceph-deploy-1.5.38.tar.bz2 ceph-deploy-1.5.38/ #压缩解压后的文件夹为bz2格式的压缩包
tar
命令针对不同格式的压缩和解压缩可以参考如下文档tar命令全集 - 修改ceph-deploy.spec文件,进入SPEC目录
修改访问的压缩文件版本为1.5.38,编辑该文件修改如下[root@bogon SPECS]# ll 总用量 4 -rw-r--r--. 1 root root 2146 6月 1 21:21 ceph-deploy.spec
Name: ceph-deploy Version: 1.5.39 #修改该版本为1.5.38即可 Release: 0 Summary: Admin and deploy tool for Ceph License: MIT Group: System/Filesystems URL: http://ceph.com/ Source0: %{name}-%{version}.tar.bz2 BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: python-devel BuildRequires: python-distribute BuildRequires: python-setuptools BuildRequires: python-virtualenv BuildRequires: python-mock BuildRequires: python-tox
- 修改成功之后在当前目录执行如下命令
rpmbuild -ba ceph-deply.spec
等待执行结束之后会在RPM
目录下生成如下文件[root@bogon RPMS]# ls noarch [root@bogon RPMS]# ll noarch/ 总用量 568 -rw-r--r--. 1 root root 290692 6月 1 21:27 ceph-deploy-1.5.38-0.noarch.rpm
- 最后直接在当前环境安装
rpm -ivh ceph-deploy-1.5.38-0.noarch.rpm
即可 或则rpm -ivh ceph-deploy-1.5.38-0.noarch.rpm --force --nodes
安装
关于rpm命令使用可以参考链接rpm命令的基本使用