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

