要說今年Linux哪個概念火?肯定少不了「不可變」。 Ubuntu也終於按捺不住了。
就在6月初,Ubuntu的母公司Canonical宣布:很快就會加入不可變的發行版潮流。
雖然一開始Snap的首席開發人員OliverGrawert在OMG Ubuntu網站上的一篇文章中隨意地放棄了這一宣布,但第二天Ubuntu桌面產品經理Oliver Smith 在一篇部落格文章「撈起來」再確認:將於明年四月發布的下一個長期支援版本(LTS),除了基於deb格式的傳統版本外,還將推出完全基於Snap格式建構的全新版本。
後者是基於Ubuntu Core構建的不可變桌面發行版,因為帶有試驗性質,所以僅作為替代下載,喜歡嚐鮮的愛好者可以嘗試。
需要說明的是,Canonical於2015推出的Ubuntu Core 正是 「不可變」 作業系統,同樣基於 Snap,旨在為物聯網創建一個完全容器化的平台。
不可變桌面發行版是當前的流行趨勢。 EndlessOS發行版是開先河者,Red Hat贊助的Fedora專案也有幾個,包括Fedora Silverblue(GNOME)和Fedora Kinoite(KDE),還有Linux發行版的後起之秀 Vanilla OS,其亮點之一就是系統核心「不可變」。
那麼相較於傳統作業系統,所謂的「不可變」到底指的是什麼,使作業系統「不可變」的屬性到底有哪些。
其一,只讀。不可變作業系統的主要特徵是使用者或應用程式無法直接修改正在執行的系統。
其二,原子更新。更新以原子方式應用。如果安裝更新套件成功,那麼系統就會完成升級。而如果系統更新失敗,則會恢復到原有的系統環境,以維持目前系統環境不被改變。
其三,可預言的。由於核心作業系統不會更改,因此其行為可以跨裝置預測。
其四,隔離應用。應用程式通常透過容器化與核心作業系統隔離,彼此隔離。這可確保應用程式所做的變更不會影響核心系統或其他應用程式。
這種「不可變」帶來的優缺點都十分鮮明。簡單來說,效能更卓越,使用更複雜。
優點在於:
安全性:惡意軟體更難對系統進行更改或從一個應用程式傳播到另一個應用程式。
系統的穩定性可以得到保證,因為系統檔案不會在意料之外被更改或刪除,而原子更新也能確保系統更新不會導致系統只部分更新而出現不穩定的情況。
可重現性:由於作業系統在啟動時相同,因此更容易測試、審核和驗證系統,以及診斷和解決問題。
作業系統的可管理性使得系統管理員不必擔心不同系統之間的意外變更或不一致,因為每個實例都是相同的。原子更新和回滾簡化了應用系統更新和修復問題的過程。
不足在於:
彈性降低: 不可變作業系統不如傳統作業系統靈活。使用者無法以相同的程度修改系統檔案或自訂其係統。
有限相容性:並非所有應用程式和服務都與不可變作業系統提供的容器化或隔離環境相容。
儲存需求: 更新機制通常需要映像快照儲存。隔離的應用程式可能會導致應用程式相依性儲存中的冗餘。
開發人員體驗:雖然容器化開發環境提供了好處(例如改進的隔離和可重現性),但它們也可能帶來額外的複雜性,並限制熟悉的工具和工作流程的使用。
Oliver Smith認為,不可變作業系統具有與傳統作業系統不同的特徵,並且適用於更特定的應用環境。不可變作業系統非常適合那些對穩定性、安全性和可預測性要求極高的環境,例如伺服器、IoT設備和高度安全的環境。然而,近年來,我們已經看到這些屬性展示了重要的使用者價值,首先是在行動作業系統領域,然後在PC領域越來越多。 ”
首先,雖然這個不可變發行版是Ubuntu的新產品,但它並不是徹頭徹尾的「全新」發行版:因為它是基於Ubuntu Core構建的。雖然Ubuntu Core知名度不如主流Ubuntu,但它實際上已經成熟運作多年。儘管Canonical尚未正式確認新產品的名稱,但它將基於Core 24,並在頂部提供一組附加軟體包以提供圖形桌面。已在Canonical的GitHub存儲庫上發布一份測試版本,可能是新的桌面版本。
##圖源:GitHub#
其次,基於已有的了解,我們可以進行一些推測:它很可能會使用GNOME桌面,因為這是唯一的官方Ubuntu產品。當然,一定會有例外。例如,Ubuntu Unity 的維護者就已經擁有了自己的不可變發行版,近來開始嶄露頭角的blendOS。
再者,觀察現有的一些不可變發行版,可以發現,它們普遍需要兩個軟體分發工具鏈:一個是OStree,用於安裝和維護作業系統本身,另一個是完全獨立的Flatpak,用於在其上運行的應用程式。而Ubuntu的不可變發行版肯定與之不同。
因為Ubuntu Core本身是基於Snap,可以肯定的是,桌面版的Core也是如此:它將使用Snap,並且完全使用Snap,沒有Flatpak,也沒有APT。
儘管許多人對Snap和Snap打包的應用程式不感冒,但是Snapcraft工具已經發展成熟,而且真正有效。 Snappy工具與Flatpak不同之處在於,它可以用來打包命令列程式和作業系統元件,並適用於Ubuntu系統。相較於所有其他不可變發行版,Core的桌面版採用整體打包系統,應用於整個作業系統。這也可能成為Ubuntu這款新產品的比較優勢。
有趣的是,在Canonical的官博文章中,也深入對比了其競爭對手的產品,一個是Fedora Silverblue,說明其如何透過OSTree工具遵循與Chrome OS類似的升級機制;一個是openSUSE的發行版,主要介紹與Ubuntu Core類似的MicroOS如何使用Btrfs 快照,來支援名為openSUSE Aeon的桌面環境。
一方面,Linux領域的一家公司公開討論其競爭對手及其技術非常罕見,其他企業Linux供應商通常會盡可能避免提及競爭對手,甚至無視其他競爭對手。
另一方面,Ubuntu雖然進入不可變桌面市場相對較晚,但非常了解現有的競爭對手,並且已經意識到一個更簡單但功能更強大、集成更好的軟體堆疊,對Canonical更有利。
不過,也有人對Ubuntu的新產品提出了質疑:「就在我們認為Linux給了我們選擇的自由時”,Ubuntu打破了這種幻象。
圖源:Register
這位開發人員指出:「對於許多初學者來說,Ubuntu最初就像一股清新的空氣。」。 (然而發展到現在)他們想讓他們的Linux版本自然而然地成為唯一剩下的Linux,他們狡猾計劃的主要部分是名為SNAP的兜售點。 」
這種質疑並非無的放矢,這一矛盾很早就有跡可循。
放眼Linux發行版的歷史,不可否認的是,Ubuntu是一種「現象」級的存在,其發展速度可以稱之為迅猛。Ubuntu可以說是輕鬆上手,使用方便,幾乎包含了傳統桌面Linux用戶所需的全部功能。在2004年在發布4.10版「Warty Warthog」之後僅僅幾年,Ubuntu就登上了桌面Linux排行榜的榜首。
曾經,人們相信開源,相信Linux的動因很簡單:選擇自由。遺憾的是,Ubuntu的背後公司Canonical在決策上恰恰背離了這一原則。有爭議的分銷開發決策堆積如山。這也讓許多Linux用戶對此失望。
最典型的一個事件就是,Ubuntu幾乎是一意孤行地向用戶強加了Snap格式。
簡單來說,Snap是一種分發封裝在Snap包中的軟體的方法,Snap包在各種Linux發行版之間提供了使用相容性。Snap作為Canonical內部開發的一種格式,Canonical想推它無可厚非,但問題是,在這一領域,還有AppImage和Flatpak。Flatpak是大多數主要Linux發行版所傾向的首選方式,這是更為重要的一點。
儘管Canonical的老闆Mark Shuttleworth 強調Snap比Flatpak更好,但是在幾乎整個Linux社群都更傾向Flatpak時,Ubuntu也堅持放棄Flatpak,這讓許多開發者感覺到,曾經以「為人而生的Linux」(Linux for Humans)為口號的Ubuntu似乎變了,開始「為商業而生」了。
因此在Ubuntu有意進軍不可變桌面領域時,也有人懷疑,Ubuntu Core的桌面版將主要定位於付費企業客戶,例如那些希望重新利用現有的桌面機和用於運行Windows的瘦客戶端的客戶。
客觀來說,Ubuntu仍是最流行和廣泛使用的桌面Linux作業系統之一。Ubuntu在整合、組裝和完成,以及最終用戶使用方面仍然比幾乎所有其他桌面Linux發行版都更具優勢。一些分析師表示,他們期望Ubuntu進入不可變發行版市場,因為它可能會比現有的任何公司提供更多優質的產品。
虽然现在下结论还为时过早,但这款新产品有可能显著提高Canonical在企业桌面市场上的市场占有率。这可能反过来提升其Snapcraft格式和应用商店的成功。
https://www.theregister.com/2023/06/06/desktop_ubuntu_core_in_2024
https://ubuntu.com/blog/ubuntu-core-an-immutable-linux-desktop
https://www.linuxmi.com/ubuntu-no-flagship-linux.html
https://github.com/canonical/ubuntu-core-desktop
以上是終於! Ubuntu下水「不可變」!的詳細內容。更多資訊請關注PHP中文網其他相關文章!