標籤:

Linux各發行版介紹(入門向)

發行版類型

伺服器發行版

伺服器要求軟體包穩定、安全、久經考驗。一般自帶安全設施、管理工具、各類基礎網路服務。伺服器發行版的軟體包往往很舊,依賴關係牢固。不建議在伺服器發行版上自行編譯安裝軟體包,也不建議在伺服器發行版上安裝第三方軟體包,這都是破壞服務穩定的行為。尤其不建議因為嫌棄伺服器上的軟體包太舊而人為安裝較新的版本,這樣會破壞伺服器發行版苦心孤詣設置的穩定軟體結構,這是伺服器發行版最寶貴的價值。

但總有些包是官方沒有提供的,典型如各類常用非自由軟體。安裝這些包的時候需要小心。

工作站發行版

工作站是開發用機,要求軟體包足夠新,方便開發者跟進開發。開發者可以在工作站上嘗試新工具,有別於伺服器上只部署久經考驗的穩定服務。工作站一般自帶各類開發環境。

容器發行版

為Docker等容器量身打造的版本,為規模計算機集群而優化,著重提供自動化部署和其他集群服務能力。

桌面發行版

桌面主要供日常使用,要對桌面操作、鍵盤滑鼠、音頻視頻播放、瀏覽網頁提供較好的體驗。一般自帶各類桌面應用。軟體包管理不如伺服器版和工作站版規整,軟體結構比較差。

版本體系

有的公司會同時開發伺服器版與桌面版,也有社群會維護有相關關係的伺服器版與桌面版。

伺服器Linux和工作站Linux最好成套,例如都採用紅帽系,或都採用SUSE系,或都採用Debian系。這樣可以讓開發環境和部署環境相對一致,擁有相同的工具棧,開發效率高,部署成本低。

紅帽系:

  • Red Hat Enterprise Linux(付費伺服器)
  • CentOS(免費伺服器)
  • Fedora WorkStation
  • Fedora Server
  • Fedora Atomic

Red Hat Enterprise Linux簡稱RHEL,是美國紅帽公司提供的付費伺服器發行版,配套紅帽公司的付費支持服務。

CentOS是RHEL的開源版,由紅帽社區根據RHEL採用的軟體包編譯而來,免費,不享受紅帽公司付費支持服務。

Fedora有三個版本:工作站版、伺服器版、容器版。工作站最為流行,一般說Fedora就是指其工作站版。

Fedora的伺服器版並不適用於實際部署服務,用官方文檔的說法,Fedora伺服器版「便於經驗豐富的系統管理員使用開源社區中的最新伺服器技術。」可以說是伺服器管理人員的開發版。資深的管理人員可以把它當作實際部署服務的版本。

Fedora Atomic是針對Docker的版本。

Suse系:

  • SUSE(伺服器)
  • openSUSE(工作站、桌面)

SUSE是一款歐洲的企業用發行版,自身還有很多版本,包括普通的企業版伺服器版本、各種硬體平台定製的企業伺服器版本、企業桌面版本、企業管理版本、企業存儲版本等等,大部分版本與服務需要收費。SUSE比紅帽更為高端,適合大型企業使用。

openSUSE兼有工作站與桌面的功能,以桌面精美著稱,軟體包的配置和管理則為工作站應用創造了良好條件,如果現在需要在個人電腦上安裝一款國際化的Linux,我推薦openSUSE。

Debian系:

  • Debian(伺服器)
  • Ubuntu(桌面)

其中Ubuntu分為桌面版、伺服器版、嵌入式版(物聯網版),桌面最為流行。

Ubuntu桌面是桌面Linux中影響力最大的,資料豐富,社區發達,適合新手入門,也適合長期作為桌面使用。

Ubuntu的伺服器版適合初學者入門,因為和廣泛使用的Ubuntu桌面最為接近,容易入手,但難堪大用。

嵌入式版我不了解。

特別:

  • Gentoo(工作站)
  • ArchLinux(工作站)
  • CoreOS(容器)
  • Deepin(桌面)

Gentoo和ArchLinux都是完全的滾動發行版,可以靈活安裝各種軟體,定製性強。Gentoo的定製性尤其強,Gentoo的軟體包是源碼而非二進位碼,需要在本地編譯安裝,用戶可以定製編譯選項。甚至連Gentoo內核都可以換,在Linux之外還可以選擇BSD等內核。Gentoo還可以在各種硬體平台上運行,是最靈活的主流發行版。

ArchLinux使用二進位包,靈活性不如Gentoo但超過絕大多數發行版。在同樣是完全滾動更新的前提下,比Gentoo容易操作,使用更加方便省心。

CoreOS是為容器優化的集群服務Linux,是影響力很大的容器操作系統。

Deepin是一款國產桌面發行版,桌面功能強勁,對中國用戶友好。如果您想使用一台Linux桌面,強烈推薦Deepin。

本作品採用知識共享署名-相同方式共享 4.0 國際許可協議進行許可。


推薦閱讀:

mount --bind 可以算是ln一個目錄么?
VMware 虛擬機下如何安裝VMware tools(zero)
如何忍受object-c如此啰嗦的語法?
Linux下有什麼工具可以分析出一個程序的運算時間分布嗎?
linux下沒有root許可權如何方便地安裝軟體?

TAG:Linux |