什麼是 Linux?

Linux 的定義

Linux 是一種使用開放原始碼模型開發的電腦作業系統。開放原始碼軟體開發原則如下:

  • 透明度
  • 協作
  • 發行較早且更頻繁
  • 採取精英主義
  • 社區

開放原始碼開發模型也意謂著改善功能來自許多不同的公司和個別貢獻者,因此產品方向主要由使用者社群來決定,而非由單一廠商的單一開發團隊來決定。

什麼是 Linux 核心?

Linux 核心是 Linux 電腦作業系統的核心。核心是電腦硬體與其程序之間的核心介面,可確保有充足的記憶體可執行 Linux 應用程式、最佳化處理器,以及跨應用程式瀏覽系統需求。

Linux 核心會透過「中斷」方式,在硬體與應用程式之間進行通訊。當硬體要與應用程式及更廣的系統進行互動時,處理器與核心之間會發生中斷,以有效率地管理資源。

核心 (位於硬式作業系統 Shell 內) 可控制個別硬體的所有主要功能,且不限裝置 (包括行動裝置、平板電腦、桌上型電腦或筆記型電腦、伺服器等)。Linux 核心著重於下列關鍵功能:

  1. 記憶體管理:追蹤記憶體的運用量及運用方法。
  2. 程序管理:決定哪些程序可以使用中央處理器 (CPU) 以及如何使用。
  3. 裝置驅動程式:作為硬體和應用程式/程序之間的中介。
  4. 系統呼叫與安全性:接收來自應用程式程序的服務要求。

適用於開發人員的 Linux

開發人員有充分理由偏愛使用 Linux。Linux 經時間驗證且功能強大。藉由 Oracle Linux,開發人員可在大型社群中分享建置內容,或隨時隨地進行疑難排解。

歡迎立即前往我們的開發人員入口網站,瞭解 Oracle Linux 如何透過各種語言 (Python、Node.js、Go)、應用系統和基礎架構教學課程,使開發人員因此獲益,以及如何使用 Oracle Linux 調整硬體使用案例。

誰需要使用 Linux?

Linux 作業系統可用於各種系統和環境。其可強化大型雲端基礎架構環境、內部部署融合式基礎架構設備、應用程式伺服器、桌面運算環境及內嵌系統。有些 Linux 軟體發行套件也包含代管虛擬機器的 Hypervisor。


《開發人員與 Linux》影片 (17:03)

Linux 為誰所有?

Linux 並非任何人或公司的「所有物」。許多個人與公司都對 Linux 的更新有所貢獻,且通常以開放原始碼軟體授權方式 (例如 GPLv2) 提供貢獻項目的授權。Linus Torvalds 擁有 Linux 名稱的版權,但任何人都可以結合各種開放原始碼元件來建立 Linux 的發行套件。一般來說,相關公司會向您收取其發行套件的使用費,也可能只收取發行套件支援費用,或免費提供發行套件 (但通常不提供支援)。


《Linux 有何獨到之處?》影片

什麼是 Linux 發行套件?

Linux 發行套件 (有時縮寫為 "Linux distro") 是金鑰和選用元件的集合,可合併成完整的作業系統。一般而言,Linux 發行套件包含 Bootloader、Linux 核心、初始化系統、協助程式、圖形伺服器以及應用程式等核心元件。有些發行套件包含額外的選項,例如高效能 Linux 核心、管理工具、Hypervisor 甚至雲端原生環境的元件。

各種 Linux 發行套件的使用方式及位置

Linux 發行套件之間的重要差異在於其使用位置、支援方式、軟體更新管理方式,以及包含哪些額外或選擇性元件。若僅考慮上述提列的發行套件,其中大部分都是用於網路伺服器 (相對於桌上型電腦),但並非所有發行套件都可輕鬆用於每種類型的伺服器環境。

例如,Red Hat Enterprise Linux 是內部部署資料中心和部分雲端的熱門選擇,但有些雲端不予支援。Amazon Linux 可在 Amazon Web Services (AWS) 雲端使用,但不容易在其他雲端或內部部署環境使用或取得支援。RHEL 使用者則大多相反,願意支付相對較高的年度支援成本,以獲得系統更新和電話支援。Fedora 的目標對象是較不在意長期穩定組態的使用者;這類使用者想要的是持續在系統中加入最新的實驗功能。

每種使用案例的最佳 Linux 作業系統

Linux 發行套件幾乎跟 Linux 的使用案例一樣多,因此不太可能有每種使用案例通用的最佳 Linux,儘管如此,不同使用案例仍可能會有最適合的 Linux。下節探討 Linux 類型之間的差異,以協助您識別哪一種 Linux 作業系統對特定狀況來說最有利。

Linux 版本

由於任何人都可以透過可用的原始碼建立 Linux 發行套件,並選擇元件的變化版本,因此許多 Linux 發行套件非常類似。有些發行套件雖來自不同公司,但實際上可以互換。

不同的發行套件也可能會針對不同目的進行最佳化,有些要盡可能小巧精簡;有些則著重於提供桌面硬體的廣泛支援。此外,有些發行套件還包含特殊的功能,例如自動修正或更高的資料庫效能。

熱門發行套件包括:

  • IBM Red Hat/Red Hat Enterprise Linux (RHEL 或 Red Hat Linux)
  • Amazon Linux
  • Fedora
  • Oracle Linux
  • SUSE Linux
  • Ubuntu

各種 Linux 作業系統如何管理更新與修正程式

還有一種差別在於作業系統如何管理選用的軟體更新與修正程式。上述提列的許多系統 (但非全部) 都使用 RPM (之前稱為 Red Hat Package Manager)。有些其它的 Linux 發行套件是使用 Debian 套件 (dpkg) 系統。

個別套件管理程式本身並不重要,但使用不同套件管理程式的系統之間會產生相容性差異。例如,如果系統使用 RPM 系統 (有時稱為 "rpm Linux distros"),這類系統可以從類似的發行套件伺服器下載極為類似的套件,因此您可以根據所使用的功能輕鬆在系統間進行互換。

您也可以輕鬆將 RHEL 安裝就地轉換為 Oracle 安裝,只要將套件管理程式指向新的更新伺服器即可。主要原因是因為這些安裝都使用 RPM 系統。(請注意此技術聲明:您可能必須額外遵守供應商的授權條款,但本文件內容範圍不涵蓋這些條款。)若發行套件是使用 Debian 套件系統 (如 Ubunto),則較難進行這類轉換。

選擇 Linux 發行套件時要考量的因素

底部堆疊的優勢

對許多客戶來說,作業系統是位於軟體平台堆疊的底部,其業務應用程式位於頂端。這會導致作業系統的重要性似乎不如堆疊中較高層次,且不論選什麼發行套件都無關緊要。有人甚至會誤以為所有發行套件都一樣。

但由於 Linux 作業系統最接近 (或位於) 堆疊底部,因此可能影響到其上方的所有項目。若這個低層次的安全性、效能、可靠性及疑難排解功能有所提升,代表堆疊上這所有因素都可獲得改善。例如,名為 Ksplice 的技術可讓管理員不需重新啟動伺服器,即可套用安全修正程式並修正錯誤。單從這方面來看,優勢似乎不大。不過,試想當業務應用程式中斷時造成的損失,以及系統未針對最新安全威脅進行修正時的潛在風險,可在不干擾業務應用程式的情況下進行修正的功能就顯得大有助益了。

在堆疊中發揮這些優勢時,可輕鬆獲得數倍的價值。節省作業系統層次的重新啟動時間,頂多為管理員省下了幾分鐘時間。但從面向客戶的主要應用程式來說,避免排程停機時間,可讓組織免受損失以及潛在收入衝擊,其金額可能是管理員年薪的數千倍。這也表示,企業絕不會因為忽略安全性更新而造成任何損失和風險。

效能優勢

同樣地,由於管理員通常花較少的時間直接在作業系統上工作,而使用者花的時間更少,因此改善作業系統的效能看似不重要。但向上移至業務應用程式層次時,若微幅效能提升乘以數百萬筆高價值交易,即可節省每筆交易的成本,甚至可比競爭對手更快速完成具時效性的交易,進而為企業帶來競爭優勢。

為什麼選擇 Linux?

開放且完整

Oracle Linux 是開放且完整的操作環境,能在單一支援服務中提供虛擬化、管理和雲端原生計算工具以及作業系統。Oracle Linux 是完全與 RHEL 相容的應用程式二進位檔。基於此相容性,Oracle Linux 通常也可取代其他 RPM 式發行套件。

免費

您可以在自助式支援環境中免費使用 Oracle Linux,或針對實際執行工作負載使用付費的 Linux 支援協議。

持續改善

為了支援 Oracle Database 的高效能,Oracle 工程師已持續改善 Unbreakable Enterprise Kernel。雖然這些改善是專為 Oracle Database 所做,但對於任何運算或記憶體密集應用程式都有助益。根據部分使用者回報表示,此類 Linux 核心的效能提升超過 30%。

隨附零關機時間修正

Oracle Linux 可選擇性包含零關機時間修正技術 (稱為 Ksplice),其可定期修正伺服器,而無需重新啟動伺服器;更重要的是,不需要重新啟動執行其上的業務應用程式。如此可確保更頻繁的修正,系統也更加安全與符合規範。這也降低了典型大型業務應用程式的管理負荷,其需要完成大量排程及對所有相關當事人進行層層核准等工作之後,才能重新啟動。Oracle Linux 還包括開放原始碼 KVM Hypervisor 和 Virtualization Manager (PDF) (具支援協議)。

隨附許多雲端原生工具

隨著許多工作負載開始日漸移至代管的雲端環境,內部部署工作負載通常採雲端原生模式與技術、Kubernetes、Kata 容器及 Istio 架構。Oracle Linux 是 Oracle Cloud Infrastructure (OCI) 的基礎作業系統,並包含此架構所需的許多雲端原生工具。這表示 Oracle Linux 是在最大型、要求最嚴苛的環境下進行測試,而且該環境符合大多數現代化應用系統的設計樣式。從這個過程中淬鍊出的結晶,對作業系統帶來直接的改善。但是,Oracle Linux 不同於擁有雲端專有系統的其他雲端供應商,無論使用者是在 OCI、其他雲端還是客戶自己的資料中心,都可以使用相同組態的 Oracle Linux。

Oracle Autonomous Linux 的基礎

Oracle Linux 也是全球唯一自治式作業系統的基礎,每天都會自行修正,以減少安全威脅和管理負擔。

自 2006 年來,Oracle Linux 已完全提供免費下載和使用,包括免費的原始碼、二進位檔及更新。可自由重新分配。免費供生產使用。