Linux發(fā)行版該如何選擇
前言
對于很多剛使用Linux的人來說,選擇使用哪個Linux發(fā)行版著實是一件頭疼的事情,特別是對于有選擇困難癥的人們就更是如此了。其實對于那些著名的Linux發(fā)行版本,都有比較明顯的個性,具體選擇哪些,也只是由自己的需求而定,當(dāng)然,如果你很熟悉Linux的話,那么版本的問題就不是問題了,因為在根本上它們都是相似的。
那么它們的個性是什么呢?這就要從幾個方面去定義了。
包管理器
或許這是各發(fā)行版之間最顯著的不同了,Linux與Windows不同,各種已經(jīng)編譯好的軟件包大部分可以通過軟件源來下載,而且各種軟件包之間都存在著復(fù)雜的依賴關(guān)系,這些依賴關(guān)系是很難手動去解決的,于是包管理器就誕生了。
對于包管理器,在Linux里面可以說是分派系的,現(xiàn)在主要分為以下三派
DPKG
這是Debian Linux家族的包管理器,使用它的發(fā)行版包括了Debian,Ubuntu,Linux mint等等,在其范圍下有幾個比較出名的工具,一個是在命令行使用的APT(高級打包工具),另一個是有圖形界面的Synaptic包管理器,這兩個東西的使用非常廣泛,一般安裝了Ubuntu等之后就直接可以使用了。
RPM
由RedHat創(chuàng)建的包管理器(Red Hat Package Manager),顧名思義,這個包管理器就是RedHat系列Linux所使用的了,其中包括了RedHat,F(xiàn)edora,CentOS等等。在其下也包括了幾個著名工具,一個是YUM,另一個是DNF。
Pacman
這又是一個流行的包管理器,主要用于Arch Linux及其發(fā)行版之中,包括了Arch Linux和Manjaro等。
當(dāng)然,包管理器不止這么些,但主要的就是以上幾個,其它的還有Gentoo上的Portage,openSUSE上的Zypper等。
桌面環(huán)境(DE)/窗口管理器(WM)
超強的自定義性可以說是圖形化Linux的一大特點了,Linux的桌面環(huán)境(或窗口管理器)數(shù)不勝數(shù),但這其實已經(jīng)不屬于選擇發(fā)行版的范疇了,但是因為每個發(fā)行版有其偏好的桌面環(huán)境,所以也放進(jìn)考慮范圍。
桌面環(huán)境可以按輕量級和重量級來分。
輕量級
XFCE
一個最常用的Linux桌面環(huán)境,由于其輕量化可配置型強的特點,幾乎所有發(fā)行版可以簡單地安裝XFCE桌面,默認(rèn)推薦使用XFCE的有Manjaro。
XFCE桌面
MATE
作為另一個常用的桌面,雖然可能沒有XFCE使用廣泛,但還是有許多人喜歡的。
MATE桌面
i3(wm)
這是一個經(jīng)典的平鋪窗口管理器,常被一部分人奉為生產(chǎn)力環(huán)境,通過常用快捷鍵操作就基本不需要鼠標(biāo)了,當(dāng)然,是否有生產(chǎn)力就因人而異了。
i3桌面
awesome(wm)
又是一個平鋪式的窗口管理器,與i3相似,由于平鋪式的桌面并非適合每個人使用,受到的爭議也比較多,所以似乎還沒有發(fā)行版將其作為默認(rèn)桌面環(huán)境。
awesome桌面
重量級
KDE plasma
最出名的桌面環(huán)境之一,可定制性很強,同時流暢度也較高,由于其在KDE5版之前有著很多bug,所以曾經(jīng)不被看好,但是現(xiàn)在是比較出色的桌面環(huán)境之一,桌面應(yīng)用采用Qt進(jìn)行開發(fā)。默認(rèn)使用其作為桌面環(huán)境的有Kubuntu等。
KDE桌面
Gnome
一直和KDE不分高下,以簡潔高效著稱,可定制性沒有KDE那么高,但也是不錯的。在早期版本中存在內(nèi)存溢出和單線程的性能問題,所以流暢度有所欠缺,在***的3.30版本中有所改善,桌面應(yīng)用采用GTK進(jìn)行開發(fā)。
Gnome桌面
Unity
在ubuntu16及以前在Gnome基礎(chǔ)上特別定制的桌面環(huán)境,從ubuntu17開始被Gnome取代,已經(jīng)不推薦使用,但是在使用上似乎比Gnome流暢度要高。
Unity桌面
Budgie
***的特點是簡潔好看而優(yōu)雅,對Gnome工具的兼容性高,特別之處不多,源于SoLus Linux。
Budgie桌面
DDE
Deepin DE,這是一個應(yīng)用在Deepin上的桌面環(huán)境,Manjaro也有DDE版本,是一個國產(chǎn)的優(yōu)秀桌面環(huán)境,從外觀上就勝過了不少對手。
DDE桌面
Cinnamon
Linux mint的默認(rèn)桌面環(huán)境,基于Gnome3,跟Gnome同源,因為我也不太熟悉,就不多介紹。
Cinnamon桌面
當(dāng)然,也還有不少其它的桌面環(huán)境,但以上的是最常見的。
穩(wěn)定性/安全性
其實對于真正使用Linux作為服務(wù)器或者生產(chǎn)環(huán)境的人來說,以上兩點無非是一點小習(xí)慣上的差異,因為無論是包管理器還是桌面環(huán)境,大家提供的功能并非是不可替代的,很多時候是順不順手的問題,所以在這時候產(chǎn)生主要影響的可能就是其穩(wěn)定性了。
更新方式
要說到Linux的穩(wěn)定性,就離不開它的軟件更新機制,一般來說Linux的更新方式有兩種,也即滾動更新和固定版本更新。
滾動更新 滾動更新就是說系統(tǒng)可以通過頻繁的小更新來使它的軟件時刻保持***的狀態(tài),在這種方式下,很多時候就免除了需要手動更新軟件版本的問題,軟件的漏洞也能及時得到修復(fù),安全性比較有保證,但與此同時,任何軟件都保持***狀態(tài)意味著它們的依賴關(guān)系可能會出現(xiàn)問題,因為一個軟件的開發(fā)者可能還沒準(zhǔn)備好匹配它的依賴軟件,它的依賴軟件卻先行更新了。所以滾動更新有時又缺乏穩(wěn)定性,造成所謂的“滾掛”的現(xiàn)象。默認(rèn)使用滾動更新的有Arch Linux,Manjaro等。
固定版本更新 固定版本更新的發(fā)行版一般會處理好軟件之間的依賴關(guān)系再進(jìn)行軟件的發(fā)布,使得其穩(wěn)定性有一定的提升,但它也同樣有著一些問題,這種更新方式使得如果你沒有更新整個系統(tǒng)到***版本,一些軟件在官方渠道的更新方式上就永遠(yuǎn)無法獲取到***的版本,如果有安全漏洞有時也無法及時修復(fù),必須要從第三方地址或者手動下載編譯來更新。當(dāng)然對應(yīng)的發(fā)行版也有一定的解決辦法,如使用Backports。默認(rèn)使用固定版本更新的有Ubuntu,RHEL,SLES等。
內(nèi)核版本
對于固定版本更新的發(fā)行版來說,它的內(nèi)核(kernel)版本也像軟件一樣在升級上有一定的限制,一般來說其內(nèi)核的版本更新較慢,且會保持在初次發(fā)行版本的附近,在大版本更新的時候才會進(jìn)行內(nèi)核的大幅升級,新的內(nèi)核會有一些新的特性,可以兼容更新的硬件,但有時候會導(dǎo)致兼容性問題。而許多滾動更新版本的發(fā)行版對內(nèi)核的限制要寬松一些。當(dāng)然這兩者都是可以自己手動更新甚至手動編譯更換內(nèi)核的,但是使用不推薦的內(nèi)核版本有可能導(dǎo)致一些奇怪的問題。
Linux中的上下游關(guān)系
Linux發(fā)行版中的上下游關(guān)系也就是各種軟件包的上下游關(guān)系,從一定角度來看,上游就是軟件包的開發(fā)者和與開發(fā)者關(guān)系密切的發(fā)行版,而下游就是驗證軟件包可用性和穩(wěn)定性并提交反饋的發(fā)行版,上游項目的軟件版本更新,而下游項目的穩(wěn)定性更強,如Ubuntu就是一個下游發(fā)行版的典型。
幫助文檔和社區(qū)支持
對于幾乎所有的發(fā)行版來說,它們都有相應(yīng)的幫助文檔,也有相應(yīng)的社區(qū),但它們的內(nèi)容卻有很大的區(qū)別,有些發(fā)行版的幫助文檔事無巨細(xì),有些則是只教你如何使用。像Arch Linux的wiki頁面就屬于全面仔細(xì)的典型,具體可以查看Arch Wiki,而Ubuntu的社區(qū)則是活躍社區(qū)的典型,具體可以查看Ubuntu論壇。
主要的Linux發(fā)行版
尋找主要的Linux發(fā)行版,可以參考DistroWatch,其中頁面點擊次數(shù)的排名可以大概反映發(fā)行版的活躍程度。
DistroWatch
Manjaro
一個基于Arch Linux的Linux發(fā)行版,免去了Arch Linux配置的麻煩,但保留了其優(yōu)點,基于滾動更新的機制,提供非常方便的內(nèi)核更換軟件,同時其支持Arch用戶軟件倉庫(AUR)可能是最全的軟件倉庫之一,它提供了許多桌面環(huán)境的版本,包括KDE,Gnome,XFCE,MATE,DDE等等。
Manjaro
Linux Mint
基于Ubuntu/Debian的系統(tǒng),從17.0開始,Mint基于Ubuntu長期支持版,以穩(wěn)定性和簡單易用著稱,但軟件更新較慢,有時不能兼容***硬件,提供Cinnamon,MATE,KDE和XFCE桌面環(huán)境的官方支持。
Linux Mint
Ubuntu
著名的Linux發(fā)行版,由Canonical公司發(fā)布,同時也提供商業(yè)支持,在易用性和穩(wěn)定性上都有不錯的表現(xiàn),Ubuntu從17以后將默認(rèn)桌面環(huán)境從Unity改為Gnome,同時其有對應(yīng)KDE桌面的第三方版本Kubuntu。其包括長期支持版和***版,兩者的維護(hù)支持周期不同。
Ubuntu
Fedora Fedora
是Red Hat在個人領(lǐng)域的版本,因為其被作為Rad Hat的測試平臺,所以一般軟件都很新,約半年一次的發(fā)布周期,引進(jìn)新技術(shù)十分快速。
Fedora
openSUSE
德國工藝,特點是穩(wěn)定,干凈和漂亮,用戶不算多,在服務(wù)器領(lǐng)域常用。
openSUSE
Elementary OS
從名字就可以知道,這是一個致力于外觀的Linux發(fā)行版,它是基于Ubuntu加一套特定主題和應(yīng)用程序發(fā)展而來的Linux,和Linux相似,但更加注重圖形界面的應(yīng)用。
Elementary OS
CentOS
這個版本來自于Red Hat的公開源代碼,由于這個特點,在一段時期內(nèi)曾被人廣為推崇,很多教科書也是以此為例,但是在現(xiàn)在來說,這是一個更加適合作為服務(wù)器系統(tǒng)的Linux。
Cent OS
Deepin
深度科技發(fā)行的Linux,在某種程度上可以說是最簡單易用的發(fā)行版,幾乎不需要命令行就能完成大部分功能,其集成了大量自行開發(fā)的軟件,以及接地氣的軟件商店,與CrossOver合作提供對Windows軟件的支持,同時還支持原生模擬Android軟件。
Deepin OS