moosefs 是一个分布式的文件系统,官方提供了源码包,里面直接包含了生成rpm包的办法。
编译环境
yum install gcc gcc-c++ make autoconf bison flex ncurses rpm-build fuse-devel zlib-devel
使用root登录,编译出rpm软件包
wget http://www.moosefs.org/tl_files/mfscode/mfs-1.6.27-1.tar.gz rpmbuild -tb mfs-1.6.27-1.tar.gz
有个小bug,在rpmbuild之前,可能需要将源码包重命名为mfs-1.6.27.tar.gz
生成一堆rpm
Wrote: /root/rpmbuild/RPMS/x86_64/mfs-master-1.6.27-2.x86_64.rpm Wrote: /root/rpmbuild/RPMS/x86_64/mfs-metalogger-1.6.27-2.x86_64.rpm Wrote: /root/rpmbuild/RPMS/x86_64/mfs-chunkserver-1.6.27-2.x86_64.rpm Wrote: /root/rpmbuild/RPMS/x86_64/mfs-client-1.6.27-2.x86_64.rpm Wrote: /root/rpmbuild/RPMS/x86_64/mfs-cgi-1.6.27-2.x86_64.rpm Wrote: /root/rpmbuild/RPMS/x86_64/mfs-cgiserv-1.6.27-2.x86_64.rpm Wrote: /root/rpmbuild/RPMS/x86_64/mfs-debuginfo-1.6.27-2.x86_64.rpm
每个角色都有一个包,分别安装在不同的机器上即可。
如果你想打包一个srpm包,也非常容易,spec文件和启动脚本都位于源码包的子文件夹rpm当中。
repoforge 也有现成的包,链接 http://pkgs.repoforge.org/mfs/
本文转自 紫色葡萄 51CTO博客,原文链接:http://blog.51cto.com/purplegrape/1329754,如需转载请自行联系原作者