本文已收錄進開源項目:github.com/JavaCollect…,有自學路線、面試題和麪經、編程資料及系列技術文章等,資源持續更新中...git
在以前的兩篇文章:github
中詳細演示瞭如何在Windows
系統和macOS
系統上基於虛擬機來打造學習和實驗用的Linux
環境,這兩篇文章中安裝的Linux
系統都是CentOS
這個發行版,因而一些小夥伴發出了致命三連擊:web
Linux
系統呢?
Linux
系統可供選用呢?
Linux
操做系統呢?
得嘞,我寫文章還不行嘛。面試
不過因爲我的能力和見識有限,若有不當之處,還請批評指出,一塊兒交流進步。編程
Linux
系統的種類實在是太多了,具體的發行版種類讓人看得眼花繚亂,本文就試着來總結一波,理一理、順一順,幫助咱們作到內心有數。服務器
單談Linux
的概念實在是太泛了。嚴格來說,Linux
只能說是一種操做系統的內核,因此咱們一般所說的 「Linux操做系統」 通常指的是 採用Linux做爲內核 的操做系統!編輯器
首先咱們選兩個常見的維度,來作個分類吧。工具
現有的Linux
發行版操做系統,能夠劃分爲由商業公司維護的商業版本和由開源社區維護的免費發行版本。性能
商業版Linux
系統典型的表明那就是RedHat Enterprise Linux
,而平時咱們所經常使用的Ubuntu
、CentOS
、Debain
這種則通常屬於免費發行版。學習
有人會說,Linux不是開源的嗎?不該該都是免費的嗎?
是的,Linux
內核是開源的,可是 開源≠免費,咱們能夠理解爲付費的是它的服務或者商業支持,因此有些Linux
的發行版它也有它所謂的商業版。
固然這個角度咱們不用糾結太多,通常我的使用,用免費發行版比較多。
首先,什麼是包管理器呢?
這麼說吧,若是沒有包管理器這個東西的存在,那估計僅僅是Linux
系統上的軟件安裝,怕是就要勸退不少用戶了,由於不少的軟件依賴處理會讓人抓狂。
所以簡單起見,咱們能夠將包管理器理解爲,用來爲Linux
系統上的軟件安裝
、卸載
、升級
、查詢
提供支持的組件,因此對於用戶使用來講,通常是一組工具命令集。
目前Linux
世界裏的包管理種類繁榮,選幾個最主流的,能夠大體梳理成以下表格所示,每一種都有對應的Linux發行版表明:
包管理器名稱 | 經常使用標誌性指令 | 表明系統舉例 |
---|---|---|
DPKG | dpkg、apt | Debain、Ubuntu等 |
RPM | rpm、yum | RedHat、CentOS等 |
Pacman | pacman | Arch、Manjaro等 |
DNF | dnf | Fedora |
Zypper | zypper | SUSE |
Portage | emerge | Gentoo |
用一個腦圖來總結一下可能會更加形象:
所接下來分別針對這裏面的幾個主流使用的Linux
發行版系統來大體嘮一嘮。
Debian
和Ubuntu
是一個派系的,但界面可能沒有Ubuntu
那麼華麗,可是比較穩定,也適合用做服務器操做系統。Debian
在開源圈子用得十分普遍,也有一大批開源愛好者活躍於其中。
Ubuntu
界面比較華麗,包管理器很完善,社區也很是活躍,我的用戶確實不少,因此從市面上看的確比較大衆化。
RHEL(Red Hat Enterprise Linux)
畢竟是商業版Linux
系統,通常多用於企業生產環境,提供完善的商業支持,在性能、穩定性方面也有很大的保障。
CentOS
能夠理解爲是基於RedHat
商業版系統的社區編譯重發布版,徹底開源免費,所以相較於其餘一些免費的Linux
發行版會更加穩定,也所以通常企業裏經常使用做服務器操做系統。
Fedora
其實和RedHat
也同屬一個派系,背後的支撐企業也是紅帽子公司。可是Fedora
是免費發行版,並且更加側重於新技術的試驗和加持,所以穩定性方面的考量較CentOS
會稍微次要一些。
SUSE
背後也算是有大公司的支持了,目前主要也仍是多用於企業用戶。
Arch
的確比較適合好奇心強的人嚐鮮,它的官方Wiki
作得好,AUR
倉庫很繁榮,適合DIY
玩家去折騰,確實也吸引了很多粉絲。
Manjaro
能夠當作是Arch Linux
的衍生分支,既包含了Arch
的常見優勢,但也對用戶友好,注重體驗和穩定性。Manjaro
的安裝和使用都比較方便,目前使用用戶很是多。
Gentoo
適合極客範化的折騰,也比較適合有特殊須要和特殊化定製的需求,整體來講比較小衆。可是用得很6的大佬們都說好,由於這些大佬們大多有系統潔癖,控制慾很強,什麼都須要本身編譯、本身定製,這個對他們來講簡直就是天堂了。
上文中只是介紹了比較主流和經常使用的Linux
發行版,其餘還有不少Linux
發行版和其衍生系統數不勝數,在此也不一一列舉了。
Linux
的生態,體驗
Linux
界面,那
Ubuntu
就很是合適
Arch
、
Manjaro
、
Gentoo
這些
CentOS
、
Debian
都是不錯的選擇
固然這僅僅只是參考,最終的選擇仍是看我的需求和興趣吧。
本文已收錄進開源項目:github.com/JavaCollect…,有自學路線、面試題和麪經、編程資料及系列技術文章等,資源持續更新中...