跳轉到內容

FOSS 網路基礎設施與安全/FOSS 和 GNU/Linux 簡介

來自華夏公益教科書,開放世界的開放書籍

自由/開源軟體

[編輯 | 編輯原始碼]

自由/開源軟體,或稱 FOSS,是指那些以自由許可證釋出的軟體,這些許可證授予使用者研究、更改和改進其設計的權利,因為其原始碼是可獲得的。自由軟體基金會提出的自由軟體定義指出,其許可證中應包含四項基本自由

1. 執行程式的自由,無論出於何種目的;

2. 研究和修改程式的自由;

3. 複製程式的自由,以便您可以幫助您的鄰居,以及

4. 改程序序並將您的改進發布給公眾的自由,以便整個社群受益。

自由 2 和 4 需要訪問原始碼,因為在沒有原始碼的情況下研究和修改軟體[1]非常困難且效率低下,因為人類通常無法理解機器程式碼或目的碼。開源倡議釋出的開源定義指出

1. 許可證不得禁止免費重新分發;

2. 程式必須包含原始碼,並且必須允許以原始碼形式以及編譯形式分發;

3. 許可證必須允許修改和衍生作品,並且必須允許這些作品以與原始軟體許可證相同的條款進行分發;

4. 許可證必須維護作者的原始碼和聲譽的完整性,要求衍生作品與原始軟體具有不同的名稱或版本號;

5. 許可證不得歧視任何個人或群體;

6. 許可證不得限制任何人將程式用於特定領域;

7. 程式附帶的權利必須適用於程式被重新分發給的所有人,而無需這些方執行額外的許可證;

8. 程式附帶的權利不得取決於程式是否屬於特定軟體發行版;

9. 許可證不得對與許可軟體一起分發的其他軟體施加限制;以及

10. 許可證的任何條款不得以任何特定技術或介面風格為前提。

一些 FOSS 軟體的例子包括:Linux 核心、GNOME 桌面和 Free Berkeley Software Distribution (FreeBSD)。最知名和最流行的 FOSS 許可證包括:GNU 通用公共許可證 (GPL)、GNU 寬通用公共許可證 (LGPL)、BSD 許可證、Apache 許可證、MIT 許可證和 Mozilla 公共許可證。有關 FOSS 的更多資訊,請參閱 Kenneth Wong 和 Phet Sayo 撰寫的《FOSS:一般介紹》。[2]

GNU/Linux

[編輯 | 編輯原始碼]

GNU/Linux(也稱為 Linux)是一種計算機作業系統。它是 FOSS 開發中最突出的例子之一。最初,GNU/Linux 主要由個人愛好者開發和使用。從那時起,GNU/Linux 已獲得 IBM、Sun Microsystems、惠普和 Novell 等大型公司的支援,用於伺服器,並且正在桌面市場中越來越流行。支持者和分析師將這一成功歸因於其供應商獨立性、低成本、安全性和可靠性。

1983 年,理查德·斯托曼創立了 GNU 專案。GNU 的目標是開發一個完全由自由軟體組成的完整的類 Unix 作業系統。到 1990 年代初,GNU 已生產或收集了大多數必要的元件——庫、編譯器、文字編輯器、類 Unix shell——除了最低級別核心。GNU 專案於 1990 年開始開發自己的核心 Hurd,該核心基於 Mach 微核心。然而,這種基於 Mach 的設計隨後被證明很困難,開發進展緩慢。

與此同時,1991 年,芬蘭大學學生林納斯·託瓦茲在赫爾辛基大學學習期間開始以愛好為目的開發另一個核心。Linux 由網際網路上的各種程式設計師進一步開發。1992 年,它與 GNU 系統相結合,形成了一個功能齊全的自由作業系統。GNU 系統最常見於這種形式,通常稱為“GNU/Linux 系統”或“Linux 發行版”。這是迄今為止 GNU 最受歡迎的變體。有 300 多個基於 GNU 的發行版使用 Linux 核心。一些最廣泛使用的發行版包括:Debian、Gentoo、Mandriva、Red Hat Linux、Slackware、SuSE 和 Ubuntu。

Linux 核心最初設想用於基於 Intel 80386 的機器。雖然最初並非打算移植到其他架構,但 Linux 現在是世界上移植最廣泛的作業系統之一,執行在從 iPAQ 到 IBM System z9 的各種系統上。針對不太主流的架構存在專門的發行版。Linux 作為超級計算機的作業系統越來越普遍。2005 年 11 月,超級計算機 Top 500 列表指出,世界上最快的兩臺超級計算機執行的是 Linux。在 500 個系統中,有 74% 執行著某種版本的 Linux,包括前 10 名中的 7 個。

Linux 核心和大多數 GNU 元件是根據 GNU GPL 許可的。GPL 要求所有原始碼修改和衍生作品也必須根據 GPL 許可,有時被稱為“共享並共享” (或“版權”) 許可證。

網路運營商對 FOSS 的看法

[編輯 | 編輯原始碼]

所有網路運營商都需要提供一套服務,為此他們需要可靠的系統。網路衝浪、電子郵件和域名系統 (DNS) 等服務構成了所有網路提供商的支柱。網路運營商還需要隨著使用者數量的增長而擴充套件,因為他們通常在高容量業務中運營。這需要一個可靠的系統,該系統可以快速擴充套件,並且可以有效地執行服務。

FOSS 在許可費用方面比專有軟體提供了多個優勢,在安裝和操作方面提供了靈活性,以及可以作為網際網路基礎設施基本構建塊參考實現的原始碼。FOSS 還減少了與其他軟體相關的病毒和安全問題,因為可以公開審計原始碼。最後,軟體的非法複製在全球範圍內越來越令人擔憂,使用 FOSS 可確保您始終站在法律一邊。

用於網路的 GNU/Linux

[編輯 | 編輯原始碼]

雖然存在其他作業系統,如 *BSD,以及那些也提供原始碼訪問的作業系統,但 GNU/Linux 是世界上最流行的 FOSS 系統。從網路的角度來看,UNIX 作業系統是多使用者系統的先驅。UNIX 和 UNIX 克隆(如 *BSD 和 GNU/Linux)在設計時就考慮到了網路效能和安全性。

過去,大多數網路系統依賴昂貴的硬體和專有的 UNIX 平臺來獲得最大的益處。使用 GNU/Linux,可以在更便宜的硬體上實現同等的益處。同時,原始碼的可用性使運營商能夠建立自己的擴充套件,並將軟體微調以滿足他們自己的需求。

此外,大多數用於網路操作的伺服器和程式都可以在 GNU/Linux 上使用,並且不斷開發許多額外的實用程式以提供更多優勢。

BSD 替代方案

[編輯 | 編輯原始碼]

儘管 GNU/Linux 在過去幾年中獲得了廣泛認可,但仍存在其他開源作業系統,主要是各種 BSD:NetBSD、FreeBSD 和 OpenBSD。BSD 許可證是 FOSS 最廣泛使用的許可證之一。許多軟體程式都在此許可證下發布,包括 Apache 和 Berkeley Internet Name Domain (BIND)。與 GNU GPL 等許可證相比,此許可證的限制較少,尤其是與版權提供的預設限制相比,使其更接近公共領域。因此,在保留對原始碼的開放訪問的同時,BSD 許可證也允許在專有軟體和產品中使用該軟體。

  1. 由程式設計師用高階語言編寫的程式碼,可以被人閱讀但不能被計算機閱讀。原始碼必須轉換為目的碼或機器語言,計算機才能讀取或執行該程式。
  2. http://www.iosn.net/foss/foss-general-primer/foss_primer_current.pdf
華夏公益教科書