Nginx源碼安裝和yum安裝對比

觀點一

根做運維的朋友聊天,談到了,yum安裝和源碼安裝哪個好的問題。真沒想到,關於這個問題,分歧還挺大的。有的人認爲,不用源碼安裝就不是好的運維,不是好的系統管理員。這帽子扣的有點大了。在此我想說一說我的看法,經常看我博客的,也許知道,前期我寫關於服務器的文章,基本上都是源碼安裝的,後來基本上是用yum安裝的,除非yum源裏面沒有,我纔會源碼安裝。在我看來,yum安裝和源碼安裝,基本上沒區別,最終還是生成系統所需求的文件,有什麼區別呢?

一,yum安裝和源碼安裝,方式的不同

1,yum安裝是將yum源中的rpm包下載到本地,安裝這個rpm包。這個rpm包是別人編譯安裝好的二進制包。這種方式與其說是安裝不如說是,更新來的更確切一點。

2,源碼安裝,下載是源碼包,要進行編譯和安裝,編譯過程,可以進行參數設定。

二,yum安裝和源碼安裝,優缺點分析

1,yum安裝的優缺點

yum安裝的優點,做運維的都很清楚,安裝東西,方便快捷,特別是不用考慮包依賴

yum安裝的缺點,安裝過程,人爲無法干預,不能按需,安裝。源裏面有什麼就安裝什麼,安裝的版本也比較低。

2,源碼安裝的優缺點

源碼安裝的優點,編譯安裝過程,可以設定參數,按照需求,進行安裝,並且安裝的版本,可以自己選擇,靈活性比較大。

源碼安裝的缺點,由於安裝包過新或者是其他問題,導致依賴的包沒有,或者版本過低。這個時候就要解決包的依賴問題,linux系統中有的包,一個依賴一個,可能裝一個小東西,就要解決一堆包的依賴問題,花很多時間解決包的依賴問題,得不嘗失。源碼安裝的多了,不敢升級系統,升級系統,可能會導致以前手動裝的東西,不能用。

很多做運維的,都認爲,源碼安裝比yum安裝的性能要好,根據參數選擇安裝,肯定比yum裝了一大堆要好。這樣認爲的運維,我只能說,他不懂配置。根本不瞭解自已裝的東西。在我看來,同一版yum安裝和源碼安裝完全是一樣的。

以apache以例吧,這個東西,非常常見的,用做web最廣泛的工具之一,源碼安裝,./configure時候,可以添加很多參數,來實現訂製。yum安裝也可以,yum安裝裝了很多,apache的模塊,有的模塊根本用不到,無故浪費系統資源和影響性能。但是我們可以配置httpd.conf啊,不需求的模塊,我們可以不LoadModule啊,通過修改配置文件,完全可以實現根源碼安裝一樣的效果。不排除少數軟件,安裝後,不能配置情況,也就是說安裝的時候是多少東西,就是多少東西,沒有配置文件可以配置。

我覺得,對於剛接觸linux的人來說,源碼安裝很有必要,這樣你可以知道自己在做什麼,安裝過程中,肯定會遇到很多很多的問題,遇到問題,解決問題。這樣纔會成長。不要一直都用yum裝,如果yum安裝出了一點問題,就傻眼了,不知道怎麼解決,這樣很杯具。

 

觀點二
 

  1) YUM二進制方式,部署配置非常的簡單,基於YUM工具可以在線直接部署安裝,可以自動解決軟件包之間依賴的問題,但是YUM不能自定義軟件的模塊和功能,不能自定義軟件部署的路徑,對後期的維護成本會增加;

 2)  MAKE源碼方式,部署配置非常的複雜,不能自動解決軟件包之間的依賴關係,但是基於源碼編譯方式可以自定義功能和模塊,而且可以自定義部署的路徑,統一的管理,減輕後期的維護工作量;

3) 生產環境中,yum和源碼安裝的區別根本不是性能和yum庫裏面版本過低的問題。大部分生產環境要求服務器的環境配置要一致,因爲後期會不定時增減機器、開關新服,環境不一致出問題排查成本過高,想想看,一兩百臺服務器沒什麼,如果是一兩千臺服務器呢?幾萬服務器呢?監控維護成本太高。並且,對自動化運維來說,統一環境如果需要升級某個程序版本,一個腳本幾條命令的事。如果是yum安裝,機房和機房之間,國家和國家之間,yum的庫不能保持一致,會很蛋疼。

大型的軟件包、軟件服務,採用源碼編譯
小型的軟件環境,庫文件,YUM

 

觀點三

1、YUM安裝可以看成是在線安裝的一種方式,只需要yum install 軟件名,系統就自動根據yum源配置文件中的鏡像位置去下載安裝包了,並可以自動分析所需的軟件依賴關係,自動安裝所需的依賴軟件包。此方式適合初學者,簡單方便,不用考慮依賴關係。但有些軟件並不能通過yum來安裝。

2、而源碼安裝方式是需要自己到網上下載源碼包,然後解壓安裝。此方式可以指定配置參數,更加靈活方便,兼容性更強。比較適合對Linux系統有較多瞭解的進階用戶使用。

3、實際工作中,兩種方式結合起來使用,效果更佳

最後想說一下:對於我們來說只要能解決問題都是好方法,我們最主要的是要知道這兩種方法的優缺點,找到合適的解決辦法。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章