不同Linux的發(fā)行版如何選
作為眾多企業(yè)級(jí)工具與平臺(tái)的實(shí)現(xiàn)基礎(chǔ),Linux已經(jīng)成為越來(lái)越多網(wǎng)絡(luò)專業(yè)人士的一堂必修課。包括軟件定義網(wǎng)絡(luò)(SDN)與SD-WAN、云網(wǎng)絡(luò)、網(wǎng)絡(luò)自動(dòng)化乃至配置管理在內(nèi)的各類方案,都離不開(kāi)Linux的加持與輔助。
經(jīng)過(guò)幾十年的發(fā)展歷程,Linux也發(fā)展出面向不同開(kāi)發(fā)者群體、用于解決不同實(shí)際需求的多種版本。當(dāng)前市面上的Linux發(fā)行版多種多樣,雖然其享有同一套底層核心,但又各自擁有鮮明的修改與適用范圍。
在本文中,我們將以Debian、Fedora、CentOS、RHEL與Ubuntu五大發(fā)行版為例,聊聊具體獲取及安裝與方式,并評(píng)估其各自適用場(chǎng)景。
發(fā)行版之間的共性
所有Linux發(fā)行版都使用同一套Linux內(nèi)核,并受益于內(nèi)核社區(qū)對(duì)于操作系統(tǒng)核心軟件及進(jìn)程做出的更新。此外,各發(fā)行版也支持標(biāo)準(zhǔn)Linux命令,包括cd、ls、rm與cp等以導(dǎo)航目錄結(jié)構(gòu)。發(fā)行版中還包含眾多大家熟知的命令,如find、grep、tail、more、cat以及ps等。所有Linux版本都通過(guò)類似的命令實(shí)現(xiàn)用戶的添加與刪除、文件移動(dòng)以及使用設(shè)備驅(qū)動(dòng)程序與外部設(shè)備交互。Linux社區(qū)也已經(jīng)將LibreOffice標(biāo)準(zhǔn)化為生產(chǎn)力套件,以默認(rèn)形式安裝在各發(fā)行版之內(nèi)。
大部分Linux系統(tǒng)使用systemd作為初始化系統(tǒng)、進(jìn)程管理與系統(tǒng)管理器。管理員使用systemctl命令控制具體配置方式,并對(duì)操作系統(tǒng)上運(yùn)行的各項(xiàng)服務(wù)執(zhí)行啟動(dòng)、重啟、啟用、禁用、重新加載或狀態(tài)檢查。
在網(wǎng)絡(luò)方面,大部分Linux系統(tǒng)使用NetworkManager、DHCP for IPv4與DHCPv6,帶有RDNSS/DNSSL的SLAAC,而且原生支持IPv6。
主要發(fā)行版間的差異
當(dāng)然,各Linux發(fā)行版之間也存在著一系列核心差異。
雖然x86-64與ARM架構(gòu)大受歡迎,但也有一些Linux發(fā)行版會(huì)支持其他相對(duì)小眾的計(jì)算機(jī)硬件架構(gòu)。大家需要根據(jù)實(shí)際硬件選擇對(duì)應(yīng)的發(fā)行版本。
Linux系統(tǒng)往往還會(huì)使用不同的默認(rèn)文件系統(tǒng)類型。目前的主流Linux發(fā)行版多以ext4與xfs為首選文件系統(tǒng)方案。
軟件包管理器也是各Linux發(fā)行版之間的核心差異之一。大家可以使用RPM、APT、yum、DNF、dpkg以及Flatpak等多種工具,將軟件加載至Linux系統(tǒng)當(dāng)中。不同的Linux發(fā)行版還附帶有各種軟件,也可以根據(jù)需求任意添加各種開(kāi)源應(yīng)用程序。
Linux愛(ài)好者們對(duì)于窗口管理器及桌面環(huán)境也各有要求,甚至結(jié)成了堅(jiān)定且穩(wěn)固的支持者集團(tuán)。大部分Linux發(fā)行版帶有GNOME、KDE、Xfce以及LXDE等默認(rèn)容器管理器,但用戶也可以根據(jù)自身喜好選擇并自定義具體方案。不過(guò)總體來(lái)看,GNOME仍是大多數(shù)Linux發(fā)行版的最佳選項(xiàng)而且默認(rèn)啟用。
雖然Linux屬于開(kāi)源成果,但其許可模式也允許商業(yè)組織為系統(tǒng)提供營(yíng)利性質(zhì)的支持服務(wù)。不同的Linux發(fā)行版具有不同的支持與許可模式,某些用戶需要獲取實(shí)時(shí)支持才能確保運(yùn)行有關(guān)鍵業(yè)務(wù)應(yīng)用程序的服務(wù)器始終保持正常運(yùn)行;而其他一些用戶則可以選擇個(gè)人使用、自主編寫(xiě)代碼并將成果貢獻(xiàn)給開(kāi)源社區(qū)。
選擇正確的發(fā)行版
很多朋友在選擇Linux發(fā)行版時(shí)往往感到頭痛不已。如果不清楚如何取舍,不妨看看其他人的決斷。W3Techs估計(jì),在全部網(wǎng)站中約有72%的比例在使用某種類型的Unix操作系統(tǒng)(其中39%使用Linux)。而W3Techs在互聯(lián)網(wǎng)上觀察到的全部Linux操作系統(tǒng)中,使用頻率最高的是Ubuntu,其次是CentOS與Debian;當(dāng)然,也有不少Linux版本無(wú)法由W3Techs收集到的信息準(zhǔn)確識(shí)別。
這里建議大家選擇具有較高人氣的發(fā)行版,以確保能夠及時(shí)從社區(qū)或供應(yīng)商處獲取更新。另外,大版本的支持可能更好,因?yàn)檩^大的用戶群體規(guī)模會(huì)保證他人遇到過(guò)甚至已經(jīng)解決了面對(duì)的實(shí)際問(wèn)題。
另外,建議選擇擁有一定發(fā)展歷史的操作系統(tǒng)。如果選擇的是某不知名社區(qū)推出的系統(tǒng)版本且社區(qū)最終被迫解散,那么技術(shù)支持將無(wú)從談起。
也有一些朋友可能更傾向于在桌面工作站或數(shù)據(jù)中心服務(wù)器上使用Linux發(fā)行版,請(qǐng)注意哪些選項(xiàng)支持這類用例。
五大Linux發(fā)行版評(píng)述
在本文中,我們根據(jù)流行程度、發(fā)展歷程、技術(shù)支持水平、開(kāi)源貢獻(xiàn)以及行業(yè)勢(shì)頭等指標(biāo)選出五大重量級(jí)Linux發(fā)行版。接下來(lái),我們將具體評(píng)述CentOS Stream 8、Debian 10.7、Fedora 33、Red Hat Enterprise Linux(RHEL)8以及Ubuntu 20.04的具體特性。
我們從權(quán)威網(wǎng)站處下載到各系統(tǒng)的ISO鏡像,而后通過(guò)英特爾NUC (NUC10i7FNH)迷你計(jì)算機(jī)上的VMware Workstation 16 Pro創(chuàng)建虛擬機(jī),再將這些虛擬機(jī)橋接至具有雙協(xié)議互聯(lián)網(wǎng)訪問(wèn)的物理雙協(xié)議(IPv4與IPv6)實(shí)驗(yàn)室網(wǎng)絡(luò)。
1、Fedora:Fedora屬于RHEL的上游開(kāi)發(fā)分支,主要負(fù)責(zé)測(cè)試并證明哪些軟件功能有資格最終入駐RHEL。目前的Fedora版本為33,發(fā)布于2020年10月27日。因此,F(xiàn)edora 33版本中的很多功能將在RHEL 8.4+發(fā)行版中陸續(xù)與大家見(jiàn)面。
許可與支持——盡管擁有Red Hat的官方支持,但Fedora本身仍然屬于開(kāi)源項(xiàng)目,采用自由與開(kāi)源軟件(FOSS)許可。各個(gè)Fedora版本會(huì)擁有一到兩年的支持周期,具體取決于實(shí)際版本和首次安裝時(shí)間。例如,F(xiàn)edora 33的支持周期將至少延續(xù)至2021年11月,而后即告生命周期結(jié)束。Fedora項(xiàng)目沒(méi)有官方支持服務(wù),但可以通過(guò)Fedora郵件列表、Fedora論壇與Ask Fedora反應(yīng)自己遇到的問(wèn)題。此外,F(xiàn)edora還提供Bugzilla bug跟蹤系統(tǒng)。
說(shuō)明文檔與培訓(xùn)素材——Fedora的官方網(wǎng)站上提供不少高質(zhì)量說(shuō)明文檔,F(xiàn)edora維基站點(diǎn)中也有相關(guān)資源。Fedora項(xiàng)目本身不提供培訓(xùn)素材,但網(wǎng)上有不少第三方課程內(nèi)容。
用例——如果希望實(shí)現(xiàn)RHEL兼容性并隨時(shí)獲取最新的Linux內(nèi)核與創(chuàng)新功能,F(xiàn)edora是理想之選。作為一款免費(fèi)操作系統(tǒng),它的技術(shù)社區(qū)能夠?yàn)樘峁┝己玫募夹g(shù)支持、說(shuō)明文檔與論壇渠道。如果需要的是一套可靠且易于上手的Linux方案,請(qǐng)選擇Fedora。
2、RHEL:Red Hat Enterprise Linux (RHEL)是由Red Hat(現(xiàn)為IBM集團(tuán)旗下企業(yè))于上世紀(jì)九十年代初所打造,能夠在最嚴(yán)苛的服務(wù)器運(yùn)行環(huán)境中保持高度穩(wěn)定。
也正是為了保證這種穩(wěn)定性,RHEL的更新頻率較低,而且可能會(huì)在新版本發(fā)布之前對(duì)各項(xiàng)功能進(jìn)行徹底測(cè)試與改進(jìn)。RHEL的當(dāng)前版本為8.3,代號(hào)Oopta,發(fā)布于2020年10月29日且支持周期將延續(xù)至2029年。(Oopta一名是為了紀(jì)念已故Red Hat工程師Larry Troan常用的chat handle。)
許可與支持——RHEL可通過(guò)訂閱獲取,在為用戶提供支持之余也帶來(lái)更多不同選項(xiàng)。通過(guò)自助服務(wù),用戶可以獲取下載并運(yùn)行RHEL的訪問(wèn)權(quán)限,并可隨時(shí)接入Red Hat知識(shí)庫(kù)。標(biāo)準(zhǔn)支持服務(wù)提供更多由Red Hat工程師負(fù)責(zé)的日間技術(shù)支持次數(shù),高級(jí)支持則24小時(shí)全天為遇到的各類嚴(yán)重問(wèn)題提供技術(shù)指導(dǎo)。
說(shuō)明文檔與培訓(xùn)素材——RHEL提供優(yōu)秀的在線說(shuō)明文檔,但與Red Hat客戶門(mén)類似、往往需要Red Hat用戶名及密碼才能訪問(wèn)大部分內(nèi)容。另外與Fedora一樣,在遇到問(wèn)題時(shí)也可以使用Bugzilla bug跟蹤器。
Red Hat提供專門(mén)的培訓(xùn)與認(rèn)證項(xiàng)目,最初專為Red Hat認(rèn)證系統(tǒng)管理員(RHCSA)、Red Hat認(rèn)證工程師(RHCE)與Red Hat認(rèn)證架構(gòu)師(RHCA)提供課程與認(rèn)證考試。此外,也有關(guān)于Java、OpenShift、Ansible、OpenStack以及容器等主題的RHEL培訓(xùn)課程。
用例——這里建議大家在需要良好技術(shù)支持并保持關(guān)鍵任務(wù)系統(tǒng)運(yùn)行的企業(yè)級(jí)生產(chǎn)應(yīng)用場(chǎng)景下選擇RHEL?傊,RHEL是面向高穩(wěn)定性、高可用性生產(chǎn)級(jí)應(yīng)用需求的最佳Linux操作系統(tǒng)選項(xiàng)。
3、CentOS Stream:CentOS(社區(qū)企業(yè)Linux操作系統(tǒng))是一款基于RHEL并由社區(qū)支持的開(kāi)源操作系統(tǒng)。雖然Red Hat同樣是CentOS的主要贊助商,但仍然可以免費(fèi)使用這套系統(tǒng)并遵循相應(yīng)的VNU GPLv2許可模型。
從歷史上看,CentOS與RHEL共享相同的版本命名約定,例如CentOS 6.5就一定是以RHEL 6.5的源代碼為基礎(chǔ)。但隨著去年CentOS Stream的推出,情況發(fā)生了重要變化。與新名稱相伴的,是CentOS的定位轉(zhuǎn)變?yōu)镽HEL下一版本的滾動(dòng)預(yù)覽。CentOS Stream 9計(jì)劃于今年春末夏初與廣大朋友正式見(jiàn)面。
原有命名方案留下的最后一個(gè)版本為CentOS 8,發(fā)布于2020年9月,并將于2021年12月31日迎來(lái)生命周期的終結(jié)。
雖然CentOS沒(méi)有正式的軟件支持服務(wù),但第三方供應(yīng)商O(píng)penLogic一直在堅(jiān)持提供商業(yè)支持方案。如果大家還需要更多支持,那么最佳選項(xiàng)當(dāng)然是轉(zhuǎn)向RHEL以獲取完善的商業(yè)支持;此外,由于CentOS與RHEL非常相似,因此大部分RHEL 8培訓(xùn)素材也直接適用于CentOS系統(tǒng)的配置與維護(hù)工作。
CentOS發(fā)行版也有不少可用的說(shuō)明文檔,包括各主要文檔網(wǎng)站及維基站點(diǎn)。此外,也可以通過(guò)社區(qū)監(jiān)控與維護(hù)郵件列表、論壇與bug跟蹤等渠道隨時(shí)提交自己遇到的問(wèn)題。
CentOS項(xiàng)目并不提供原創(chuàng)培訓(xùn)素材,但當(dāng)前網(wǎng)上有不少第三方在線課程。CentOS能夠輕松下載并在測(cè)試環(huán)境中運(yùn)行,因此請(qǐng)保證為實(shí)際硬件挑選正確的安裝鏡像。目前CentOS已經(jīng)將硬件架構(gòu)支持范圍縮小至x86-64(主要架構(gòu))、aarch64與ppc64le。
用例——如果您既想獲得RHEL與EPEL那樣良好的兼容性、又不想在Linux發(fā)行版上投入資金,那么CentOS值得推薦。CentOS特別適合作為開(kāi)發(fā)/測(cè)試操作系統(tǒng),或者最終可能會(huì)轉(zhuǎn)向RHEL的實(shí)驗(yàn)室環(huán)境。如果打算將CentOS用于生產(chǎn)級(jí)應(yīng)用,這里建議直接選擇RHEL并購(gòu)買支持訂閱服務(wù)。
4、Debian:Debian可以算是Linux領(lǐng)域的開(kāi)山祖師之一,衍生出了Ubuntu與Raspberry Pi OS等不少“徒子徒孫”。Debian項(xiàng)目源自對(duì)自由開(kāi)放軟件理想的追求,并由社區(qū)志愿者開(kāi)發(fā)而成。
Debian的當(dāng)前版本發(fā)布于2020年9月26日,為Debian 10.7,又名Buster(即〈玩具總動(dòng)員〉中的那只臘腸犬)。之前,Debian還曾以Lenny、Squeeze、Wheezy、Jessie等為代號(hào),同樣來(lái)自皮克斯動(dòng)畫(huà)電影中的角色。甚至有傳聞稱,Debian卷曲的徽標(biāo)就來(lái)自巴斯光年下巴上的同款圖形。
Debian不提供商業(yè)支持,但包含一個(gè)幫助鏈接支持頁(yè)面,可以由此對(duì)接開(kāi)源社區(qū)監(jiān)控的郵件列表、IRC聊天頻道、用戶論壇以及bug跟蹤系統(tǒng)。當(dāng)然,也可以結(jié)合需求聘請(qǐng)第三方Debian顧問(wèn)。
說(shuō)明文檔與培訓(xùn)素材——Debian提供大量可免費(fèi)下載的說(shuō)明文檔,具體涵蓋應(yīng)用手冊(cè)、指南及發(fā)行版說(shuō)明。Debian項(xiàng)目不提供培訓(xùn)素材,但當(dāng)前網(wǎng)上有不少第三方培訓(xùn)課程。
用例——如果需要一套精簡(jiǎn)、以基本應(yīng)用為核心的操作系統(tǒng),那么Debian值得一試。如果已經(jīng)熟悉Linux并且喜愛(ài)這種一切皆可調(diào)控的無(wú)障礙感覺(jué),Debian同樣值得推薦。但請(qǐng)注意,我們不建議在Debian上運(yùn)行關(guān)鍵任務(wù)應(yīng)用程序。
5、Ubuntu:Ubuntu是一款免費(fèi)且基于Debian的Linux操作系統(tǒng),最初定位為桌面與服務(wù)器系統(tǒng),但如今也擁有了面向物聯(lián)網(wǎng)應(yīng)用的Ubuntu Core版本。
Ubuntu采用免費(fèi)軟件許可模型,可以免費(fèi)在任何場(chǎng)景下使用這款系統(tǒng)。我們參閱了Ubuntu 20.04.1 LTS(又名Focal Fossa),此版本發(fā)布于2020年4月23日且支持周期延續(xù)至2025年4月。事實(shí)上,2020年10月22日還推出過(guò)更新后的Ubuntu 20.10(Groovy Gorilla)版本,但其支持周期只到2021年7月。Ubuntu各版本會(huì)定期發(fā)布,其中LTS為長(zhǎng)期支持版本。如果希望長(zhǎng)期運(yùn)行系統(tǒng)并需要穩(wěn)定的軟件更新節(jié)奏,那么LTS版本更值得推薦。下一代Ubuntu 21.04(Hirsute Hippo)的計(jì)劃發(fā)布時(shí)間為2021年4月左右。
許可與支持——Canonical公司為Ubuntu提供商業(yè)服務(wù)與發(fā)布支持,包括Ubuntu Advantage 24/7全天候技術(shù)支持,可用于滿足各類應(yīng)用及基礎(chǔ)設(shè)施需求。網(wǎng)上的Ubuntu說(shuō)明文檔所在多有,CommunityHelpWiki則提供豐富的提示與使用技巧。此外還有Ubuntu郵件列表、Ubuntu論壇、Ask Ubuntu以及bug跟蹤器以供選擇。Canonical也提供基礎(chǔ)及高階兩種Ubuntu Server培訓(xùn)課程。
用例——Ubuntu擁有可靠的社區(qū)支持。目前,Ubuntu已經(jīng)成為網(wǎng)絡(luò)工程師群體內(nèi)最受歡迎的系統(tǒng)選項(xiàng),同時(shí)擁有廣泛的應(yīng)用程序包可供選擇。如果有意接觸Linux、預(yù)算有限、又想要一整套完善的現(xiàn)代GNOME桌面體驗(yàn),那么Ubuntu就是正確答案。