許多朋友始終覺得rpm難做,主要是因為spec規則比較多,需要花精力去了解和熟悉。之前試用乙個叫checkinstall的工具,可以自動打rpm包。很久沒有維護了,在centos6上編譯有問題。雖然也有網友給打了patch,最終能用起來,可惜使用過程中還是會遇到諸多錯誤。
如今巧遇fpm,一行命令就搞定rpm包!
一、我們來先安裝fpm:
yum -y install ruby rubygems ruby-devel # fpm是ruby模組二、官網介紹了用fpm打deb包,我們翻譯成rpm版:gem sources -a # 新增**的ruby倉庫
gem sources --remove # 移除原生的ruby倉庫
# 安裝fpm
gem install fpm
三、檢視安裝包資訊:
小技巧:'-e' 引數支援打包之前手動修改fpm自動生成的spec檔案,然後再打包。不過注意centos5和centos6之間的rpm包不能混用,因為他們之間的glibc版本不同,動態庫鏈結不上。
ok,沒玩過就趕緊動手吧!
使用FPM封裝RPM包
無意中看到一張架構圖,遷出 使用本地fpm打包,看不懂fpm是什麼高階玩意,於是有了下文。簡單的說fpm就是將一種型別的包轉換到另外一種的型別。比如我們常說的將編譯安裝的包轉換到rpm包。進一步的官方說明可參考 支援的源型別包有 rpm npm rubygem ded python dir 支援的輸...
FPM定製RPM包實踐
問題 當領導給你 100 臺已經安裝好系統的伺服器,然後讓優化,讓你提出乙個快速部署方案。解答 1.tar 打包 先編譯安裝 打包 分發 解包 比如 mysql 打包後直接就可以使用 2.saltstack,puppet,ansible 3.定製 rpm yum 倉庫 yum 安裝 4.openst...
FPM定製RPM包實踐
問題 當領導給你 100 臺已經安裝好系統的伺服器,然後讓優化,讓你提出乙個快速部署方案。解答 1.tar 打包 先編譯安裝 打包 分發 解包 比如 mysql 打包後直接就可以使用 2.saltstack,puppet,ansible 3.定製 rpm yum 倉庫 yum 安裝 4.openst...