Linux 黑話解釋:什麼是 Linux 發行版?為什麼它被稱為「發行版」?
![](https://linuxstory.org/wp-content/uploads/2024/06/220737mc9gl0xxm9cczv2l-800x400.png)
讓我們來討論一下什麼是 Linux 發行版,為什麼它被稱為 發行版 (或簡稱 distro),以及,它與 Linux 內核有什麼不同。你還會了解到為什麼有些人堅稱 Linux 為 GNU/Linux。
什麼是 Linux 發行版?
Linux 發行版是一個由 Linux 內核、GNU 工具、附加軟體和軟體包管理器組成的操作系統,它也可能包括顯示伺服器和桌面環境,以用作常規的桌面操作系統。
這個術語之所以是 「Linux 發行版」,是因為像 Debian、Ubuntu 這樣的機構「發行」了 Linux 內核以及所有必要的軟體及實用程序(如網路管理器、軟體包管理器、桌面環境等),使其可以作為一個操作系統使用。
你的發行版還負責提供更新來維護其內核和其他實用程序。
所以,「Linux」 是內核,而 「Linux 發行版」是操作系統。這就是為什麼它們有時也被稱為基於 Linux 的操作系統的原因。
如果不是很理解以上所有的內容,不要擔心。下面我將詳細解釋一下。
「Linux 只是一個內核,不是一個操作系統。」這是什麼意思?
你可能看到到過這句話,這說的沒錯。內核是一個操作系統的核心,它接近於具體硬體。你使用應用程序和 shell 與它交互。
為了理解這一點,我就用我在《什麼是 Linux 的詳細指南》中曾用過的那個比喻。把操作系統看成車輛,把內核看成引擎。你不能直接驅動引擎。同樣,你也不能直接使用內核。
一個 Linux 發行版可以看作是一個汽車製造商(比如豐田或福特)為你提供的現成的汽車,就像 Ubuntu 或 Fedora 發行版的發行商為你提供的一個基於 Linux 的現成操作系統一樣。
什麼是 GNU/Linux?
讓我們再來看看這張圖片。1991 年的時候,Linus Torvalds 創造的只是其中的最內圈,即 Linux 內核。
要使用 Linux,即使是以最原始的形式,甚至沒有 GUI,你也需要一個 shell。最常見的是 Bash shell。
然後,你需要在 shell 中運行一些命令來完成一些工作。你能記起一些基本的 Linux 命令嗎?比如 cat
、cp
、mv
、grep
、find
、diff
、gzip
等等。
嚴格來說,這些所謂的「Linux 命令」並不是只屬於 Linux。它們中的很多都來源於 UNIX 操作系統。
在 Linux 誕生之前,Richard Stallman 就已經在 1983 年創建了 自由軟體項目 中的第一個項目:GNU(GNU 是「GNU is Not Unix」 的遞歸縮寫)。GNU 項目實現了許多流行的 Unix 實用程序,如 cat
、grep
、awk
、shell(bash
),同時還開發了自己的編譯器(GCC)和編輯器(Emacs)。
在 80 年代,UNIX 是專有軟體,而且超級昂貴。這就是為什麼 Linus Torvalds 開發了一個類似 UNIX 的新內核的原因。為了與 Linux 內核進行交互,Linus Torvalds 使用了 GNU 工具,這些工具在其 GPL 開源許可證下是免費的。
有了這些 GNU 工具,它的行為也像 UNIX 一樣。這就是為什麼 Linux 也被稱為類 UNIX 操作系統的原因。
你無法想像沒有 shell 和所有這些命令的 Linux。由於 Linux 與 GNU 工具集成得很深,幾乎是完全依賴於 GNU 工具,所以純粹主義者要求 GNU 應該得到應有的認可,這就是為什麼他們堅稱它為 GNU Linux(寫成 GNU/Linux)。
總結
那麼,該用哪個術語?Linux、GNU/Linux、Linux 發行版,基於 Linux 的操作系統還是類 UNIX 操作系統?這取決於你的上下文。我已經為你提供了足夠的細節,讓你對這些相關的術語有更好的理解。
我希望你喜歡這個 Linux 黑話解釋系列,並能學習到新的東西。歡迎你的反饋和建議。
via: https://itsfoss.com/what-is-linux-distribution/
作者:Abhishek Prakash 選題:lujun9972 譯者:wxy 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive