1、編譯安裝軟體,優點是可以定制化安裝目錄、按需開啟功能等,缺點是需要查找并實驗出适合的編譯參數,諸如MySQL之類的軟體編譯耗時過長。
2、yum安裝軟體,優點是全自動化安裝,不需要為依賴問題發愁了,缺點是自主性太差,軟體的功能、存放位置都已經固定好了,不易變更。
===>如果你現在還為是使用編譯安裝軟體還是使用yum安裝軟體發愁,那你就out了。
3、編譯源碼,根據自己的需求做成定制RPM包–>搭建内網yum倉庫–yum安裝。結合前兩者的優點,暫未發現什麼缺點。可能的缺點就是RPM包的通用性差,隻能适用于本公司的環境。另外一般人不會定制RPM包。這是中大型網際網路企業運維自動化的必要技能。
這裡也不介紹rpmbuild這個打包工具了,想了解的朋友自行谷歌百度。但我不建議大家花太多的時間去學習這個指令,比較晦澀,而且我會在下面介紹更簡單的指令。
FPM的作者是jordansissel
FPM功能簡單說就是将一種類型的包轉換成另一種類型。
安裝fpm依賴:
yum install -y openssl*
yum install -y gcc*
yum install -y rpm-build
詳細使用見fpm –help
常用參數
安裝rpm包的三種方法:
rpm指令安裝
yum指令安裝rpm包
搭建内網yum倉庫
<a href="http://blog.oldboyedu.com/autodeploy-yum" target="_blank">YUM倉庫搭建</a>
編譯安裝好nginx,mysql,php,此處有個問題,就是php的大部分依賴環境是通過yum安裝的,但有一個libiconv-1.14.tar.gz包需要編譯安裝,安裝時已經指定了安裝目錄,隻需一同打包即可。
還有一個問題,就是mysql這個目錄比較大,用fpm打包耗時長。平時我們有可能需要對nginx或php做優化,這樣又得重新打包。是以我們可以将mysql分離出來,分别打包。隻需在制作nginx+php的rpm包時添加mysql的依賴即可。
本文轉自 baishuchao 51CTO部落格,原文連結:http://blog.51cto.com/baishuchao/1927662