iT邦幫忙

2023 iThome 鐵人賽

DAY 2
0

Linux 與發行版

大家都在討論 Linux,甚至會把 Linux 當作是一個公司發行的商品畫上等號,其實這部份是有區別的,我們要分為 2 個部份來看,一個是作業系統核心,另一個則是發行版。

作業系統核心是做為應用程式與硬體操作的重要橋梁,在開放原始碼的世界中 Linux 就是扮演了這個角色。Linux 本身的主要網站為 https://www.kernel.org ,透過這個網站任何人都可以取得其原始碼。

什麼是 Linux

作業系統核心、函式庫與應用程式

Linux 核心基本說明

Linux 是一個自由、開放原始碼的作業系統,由 Linus Torvalds 在 1991 年所開發。Linux 的核心是管理硬體資源的配置,使得應用程式可以操作硬體資源,然而它並不是一個完整的作業系統,而是由核心、系統函式庫和工具程式所組成的整合成果。

舉個例子來說,當一個應用程式需要存取硬碟裡的資料時,它並不會直接存取硬碟,而是透過系統函式告訴作業系統核心需要哪些資料,然後作業系統核心再從硬碟中取得資料給應用程式使用。這樣的作業流程就像是一座橋樑,連接了應用程式和硬體。

然而,Linux 只是作業系統中的核心,還不足以成為一個完整的作業系統。因此,Linux 提供了系統函式庫和工具程式,讓應用程式可以使用,整合後就可以成為一個完整的作業系統。

Linux 主要特色

以下是關於 Linux 的幾個重點:

  • 開放原始碼
    Linux 以 GPL 授權發布,任何人都可以自由地使用、複製、分發和修改其原始碼,這使得 Linux 具有高度彈性與可定制性。
    由於使用了 GPL 的授權,讓整個資訊產業得以充分發展,也讓 Linux 在應用更加廣泛。

  • 多用途與跨平台
    Linux 可以安裝在各種硬體上,除了平常聽到桌上型電腦、筆記型電腦、伺服器和嵌入式系統等,甚至你我使用的手機都可以使用 Linux 運行。
    除此之外還可以運行多種應用程式,如網路服務、資料庫、圖形介面和多媒體應用程式等。

  • 安全性
    Linux 的安全性相當高,它具有較低的攻擊面、安全的檔案權限管理和高度可配置的安全機制等。
    此外,Linux 社群不斷更新和修補漏洞,使其更能抵擋新型態的攻擊。

  • 低成本
    Linux 是一個自由的作業系統,因此不需要支付昂貴的授權費用,這使得 Linux 成為企業、政府機關和個人等的理想選擇。在硬體方面,Linux 也能夠運行在比較老舊或低價的硬體上,適合那些預算有限的使用者。

  • 社群
    Linux 由全球的志願者共同開發和維護,他們不斷創新和改進 Linux 的功能和性能,使其能夠滿足不同使用者的需求。Linux 社群非常活躍,使用者可以在許多論壇和社群中獲得支援和解決問題。

Linux 是一個自由、開放原始碼、多用途、安全性高且低成本的作業系統。由於它的開放性、彈性和可定制性,並且在不同領域都有廣泛的應用,從伺服器、桌上型電腦、筆記型電腦、智慧型手機、平板電腦、嵌入式系統等都有使用 Linux 的蹤影。Linux 社群的活躍也促進了開源 (Open Source) 軟體的發展,使得許多優秀的開源軟體能夠在 Linux 上運行。

此外,Linux 也是許多大型公司的首選作業系統,除了我們常聽到的大型產業如 Apple、AWS、Google、Facebook⋯⋯之外,還有很多數以千萬計的組織與企業都在使用。它除了被廣泛用於資料中心、雲端運算、網路伺服器和超級電腦等大型計算機系統上。Linux 能夠提供穩定、高效、可擴充和安全的環境,使得企業可以更好地管理和運營他們的 IT 資源。

然而,Linux 在資訊產業被廣泛應用並不是一夜之間而成的,它需要開發者和使用者的貢獻和支持。Linux 社群不斷進行改進和優化,使得 Linux 成為現今世界上最受歡迎的作業系統之一。

什麼是發行版

眾多的發行版

Linux 發行版(Distribution)是指在 Linux 作業系統核心(Kernel)的基礎上,將相關軟體套件和應用程式打包形成的產品。基於 Linux 作業系統的開放性和自由性,發行版可以依照特定的需求和使用場景進行調整和打包,例如以企業應用為主的 Red Hat Enterprise Linux,以及以桌面應用為主的 Ubuntu Linux。每個發行版都包含一系列的應用程式和系統工具,以滿足特定的用戶需求。通常,發行版的名稱和開發商都會列在產品標籤或商標上。

發行版通常包含三個主要部分:

  • 核心: 核心是 Linux 作業系統的最基礎部分,提供了系統的基本功能和管理硬件的能力。
  • 系統工具: 系統工具包括設置工具、軟體更新工具、網路設置工具、系統監視工具等,這些工具可以幫助使用者管理系統和應用程式。
  • 應用程式: 應用程式則是發行版的主要賣點之一,常見的應用程式有瀏覽器、辦公軟體、多媒體播放器等,可以滿足不同用戶的需求。

在 Linux 生態系中,有一個非常重要的法律條款叫做 GPL License,其主要的精神在於:程式的原始碼應該要可以自由的散佈、使用,並且透過該原始碼修改而成的新成品,也必須以 GPL License 進行發佈。因此,所有的 Linux 發行版都必須遵守這個原則,公開其原始碼,讓人們可以自由地使用、複製、修改和發佈。

由於 GPL License 的開放性,任何人都可以使用 Linux 的原始碼,進行修改和打包,形成自己的 Linux 發行版。事實上,這種基於開源原始碼的開發方式,已經產生了大量的 Linux 發行版,每個發行版都有其獨特的特點和使用場景。例如,基於 CentOS Linux 修改而成的 CloudLinux,專門用於搭建 Web 服務器和虛擬主機;基於 Arch Linux 修改而成的 Manjaro Linux,提供了易用性和強大的套件管理功能,適合桌面和開發使用。除了這些廣受歡迎的發行版之外,還有許多特定用途或特定硬體平台上的發行版,如嵌入式設備上運行的 OpenWrt、適用於科學計算和數據分析的 Fedora Scientific 等。

在不同的 Linux 發行版之間,最大的區別在於包含的套件和應用程式的不同,以及相應的系統設置和管理工具。例如,Red Hat Enterprise Linux 會更注重安全性和穩定性,因此包含的應用程式和系統工具會比 Ubuntu Linux 少,但是在企業應用、安全性和伺服器應用方面表現更為優秀。相反,Ubuntu Linux 則更注重桌面應用和用戶體驗,因此包含更多的應用程式和工具,並且更易於上手和使用。

Linux 發行版是一種基於開源原始碼的操作系統,以其高度的自由性和彈性,滿足了不同用戶的不同需求和用途。它們提供了各種不同的應用程式和工具,支持多種硬體平台和場景,並且通過 GPL License 的原則,鼓勵人們自由地使用、複製、修改和發佈。

Linux 的應用範圍

大部份剛接觸或不瞭解 Linux 的使用者會問:Linux 能做什麼事?

其實更好的題目應該是:要拿 Linux 做什麼?

每個環境或產品都有其先天限制或是應用範圍,如果您要學習作業系統、程式開發、網路或 IoT 應用,那麼 Linux 會是好的開始。若是想要玩遊戲,那麼很抱歉,能在 Linux 玩的遊戲少得可憐(希望未來能改善)。因此要拿 Linux 來完成工作目標前,要先瞭解 Linux 的特性與其操作方式。

現今已經有很多的應用是使用 Linux 達成,以終端使用者來說 Google Android 手機作業系統、網路交換器作業系統、IP 分享器作業系統、一直衍伸到飛機娛樂系統等,都被不斷的應用。

更深入一點的應用,我們都知道雲端服務,但很多雲端系統是使用 Linux 所搭載而成,著名如 Amazon AWS、Google GCP 等知名公司,都使用 Linux 發展其產品或服務。

Linux 應用

選擇合適的發行版

在很多網路論壇或談話中,都想定論最好用的發行版本是哪一個,筆者認為這是沒有必要的題目。其理由如下:

  • 在初學 Linux 技能方面,易用性就成為主要需求,因為它可以讓人們容易的瞭解 Linux 特性,再進一步做不同發行版的選擇與深入探索。
  • 而在各種不同的應用環境之下,如果要符合企業應用為主,就要提供較高安全性、穩定的特性,那麼企業版本的發行版本將是較為合適的選擇,因為他內含了安全性套用與嚴格操流程,為的是讓管理員可以在謹慎的操作下管理系統。
  • 對於以 Linux 核心開發或驅動程式需求為主,則應選擇有良好開發工具或套件的發行版,這樣才能讓開發作業順利進行。

因此,每一個發行版本都有其優點,而該優點也可能是另一需求的缺點,並無絕對的好或壞。

在本書中所採用的是以企業應用為目標,在企業經營中資訊技術導入不外乎幾個原則:

  • 每一版本的通用性高。
  • 要能做成通性高的標準作業程序。
  • 相關解決方案或支援要能容易取得。

本書使用 Rockylinux 9 版本,該發行版本是由 Red Hat 公司的 Red Hat Enterprise Linux 的原始碼重新編譯而來,而 Rockylinux 創辦人也是 CentOS Linux 所主導,對於許多使用 CentOS Linux 的讀者來說是相對親切且習慣,本書的內容也可以通用到以 Redhat Enterprise Linux 等家族(如 Almalinux/Oracle Linux),不旦通用性大也符合企業應用。


上一篇
Day 1: 本書介紹
下一篇
Day 3: 系統操作環境
系列文
Linux 升華:初學者的探索到專家的洞察30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言