您好,登錄后才能下訂單哦!
這篇文章主要介紹如何實現ceph-deploy源碼制作rpm包,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
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. |
切換帳號
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生成的目錄
將修改后的代碼目錄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
以上是“如何實現ceph-deploy源碼制作rpm包”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。