[圖]Windows 11最優秀的部分就是對WSL的明顯改進

在外媒 Ars Technica 本周早些時候發布的評測中,給 Windows 11 系統的整體評價是“lukewarm”(不溫不火)。不過在後續評測中,外媒認為 Windows 11 系統中最優秀的部分就是改善了對 Linux 系統的支持。

[圖]Windows 11最優秀的部分就是對WSL的明顯改進

自上線以來,Windows 10 系統中的 Windows Subsystem for Linux(WSL)為那些需要使用 Windows 和 Linux 兩種環境的開發者、系統管理員等提供了便利。但 WSL 也存在兩個問題:第一個問題就是安裝過程比較複雜。第二個問題就是雖然能夠讓圖形應用程序工作,但整個過程比較痛苦,而且需要藉助一些晦澀的第三方應用。

在 Windows 11 系統中,微軟終於解決了這兩個問題。雖說 Windows 11 上的 WSL 仍然不完美,但它比 Windows 10 上的 WSL 有了巨大的改進。

在 Windows 11 上安裝 WSL

想要在 Windows 系統上安裝 WSL 並不是簡單的事情,不過自 Windows 10 Version 2004 以來微軟一直嘗試進行改進。只要打開一個高級命令提示符(開始–>輸入 cmd–>點擊以管理員身份運行),在提示符下輸入 wsl –install,你就可以開始了。值得慶幸的是,Windows 11 沒有改變這個過程。

一個簡單的 wsl –install,沒有其他參數,就可以得到Hyper-V和WSL的其他基礎,以及 Ubuntu 的主流版本。如果你不是 Ubuntu 的粉絲,你可以用 wsl –list –online 命令查看有哪些其他容易安裝的發行版。如果你決定喜歡一個不同的發行版,你可以用–例如,wsl –install -d openSUSE-42 來安裝它。

[圖]Windows 11最優秀的部分就是對WSL的明顯改進

[圖]Windows 11最優秀的部分就是對WSL的明顯改進

如果你不確定你喜歡哪個發行版,不要着急。你可以隨心所欲地安裝,只需重複 wsl –list –online 來列舉你的選項,然後 wsl –install -d distroname 來安裝你喜歡的任何一個。

安裝第二個發行版並不會卸載第一個發行版;它創建了一個獨立的環境,與其他發行版無關。你可以隨心所欲地同時運行這些已安裝的環境,而不必擔心一個環境會擾亂另一個環境。

WSL 現在支持圖形和聲音

除了易於安裝之外,Windows 11 上的 WSL 還支持 WSL 應用程序中的圖形和音頻。這並不完全是第一次–微軟在 4 月份通過 Windows 10 Insider Build 21364 首次推出 WSLg。但 Windows 11 是第一個支持 WSLg 的生產型 Windows 版本。

WSLg 是 Windows Subsystem for Linux GUI 的簡稱,你可以從 Ubuntu(或其他發行版)的命令行中安裝 GUI 應用程序(例如 Firefox)–並且它們會像預期那樣工作,包括聲音。當外媒在 Framework 筆記本上的 Windows 11 上安裝 WSLg 時,從 Ubuntu 終端運行 Firefox 會自動彈出標誌性的瀏覽器。在它裡面進入 YouTube 也是完美的,視頻中沒有掉幀,音頻中也沒有故障。

[圖]Windows 11最優秀的部分就是對WSL的明顯改進

[圖]Windows 11最優秀的部分就是對WSL的明顯改進

微軟決定面向未來,使用 Wayland 協議而不是越來越老的 X11/xorg。 為了使這一切順利進行,這意味着在 Wayland 的 Weston 參考合成器上建立圖形界面,與 XWayland 相連接以支持 X 客戶端,由 FreeRDP 提供本地 Windows 系統和在 WSLg 下運行的 X/Wayland 應用程序之間的連接。

那麼,我們可以在 Windows 11 上用 WSLg 做什麼?

我們看到的關於 WSLg 的最多的問題之一可以表述為“為什麼要這麼做?”這是因為 Linux 世界中的大多數 GUI “殺手級應用”並不是真正針對 Linux 的–絕大多數已經被直接移植到了 Windows 平台上。對於這些應用程序來說,運行本地 Windows 終端往往更有意義。

說到這裡,有一個明顯的 WSLg 的“殺手級應用”就是 virt-manager,這個源自 RedHat 的虛擬化管理工具。virt-manager 是一個簡單的工具,它使用 Linux 內核的虛擬機來簡化虛擬機的創建、管理和操作。

通過 virt-manager,你可以看到你的虛擬機的簡單列表,以及當前與每個虛擬機相關的磁盤、網絡和 CPU 活動的數量。你還可以操縱它們的虛擬“硬件”–例如,通過添加或刪除內存、”磁盤”、網絡接口等,並啟動、暫停或停止它們。創建和銷毀虛擬機和管理一樣簡單–最後,virt-manager 允許你將一個圖形控制台直接拉到每個虛擬機上,其行為就像連接到裸機上的物理顯示器一樣。

如果所有這些都只在本地主機上工作,那麼在 WSLg 下就會很無用。嵌套虛擬化是一個東西,但它通常不是你想在生產中做的事情。然而,virt-manager 允許你管理任何你能 SSH 到的機器上的虛擬機,而不僅僅是本地主機。在實踐中,外媒每天都使用這個遠程管理功能來管理幾十台主機(和幾千個虛擬機),包括本地和遠程。

Windows 11 上的 WSL 還無法做到哪些?

雖然 Windows 11 系統中的 WSL 功能已經獲得了增強,但它仍然不是一個真正的 Linux VM。

WSL 中沒有網絡橋接模式。這意味着很難在你的 WSLg 訪客上運行網絡服務器應用程序(Apache、Nginx、MySQL、Samba等)並將其服務暴露給網絡上的其他機器。這種自稱是“搞笑的不被支持的、未被批准的和試驗性的”工作方法似乎仍然是最接近真正的網絡橋的東西–這極大地限制了基於 WSL 的應用服務器的可用性。

你不能在 WSLg 下運行 GNOME 的軟件中心應用程序–更準確地說,你可以安裝和運行它,但它實際上是無用的。我們不確定軟件中心到底出了什麼問題,但是它在控制台彈出了一個“連接 upower 失敗”的錯誤,並且未能列出任何可用的應用程序。它也沒有列出我們所有已安裝的應用程序!

你也不能在 WSLg 下運行 GNOME shell 桌面環境本身。運行 apt install gnome-shell 可以正常工作,並拉入了滿足該要求所需的巨大的依賴列表–但 gnome-shell 本身卻以不支持會話類型而會失敗,這實際上意味着它不喜歡 WSLg 的 Weston/XWayland 環境。

缺乏對 ZFS 原生加密

最後,Ubuntu 出色的內置 OpenZFS 支持不見了。你可以毫不費力地安裝 zfsutils-linux,但是該軟件包依賴於 Canonical 的內部內核,並內置了 ZFS 支持,而微軟在其自己的 WSL2 內核中並沒有提供這種支持。

有決心的 Ubuntu 用戶仍然可以通過 apt 安裝 zfs-fuse,並期望這個用戶模式的實現能夠像在原生 Ubuntu 下一樣工作,但是我們不建議將其用於生產;FUSE 的實現仍然停留在 0.7.0,而內核內的版本是 0.8.3。這意味着缺乏對 ZFS 原生加密的支持,以及大量的其他功能、錯誤修復和增強功能,更不用說在 FUSE 而不是內核下運行的性能影響了。

總結

如果你已經是 Windows Subsystem for Linux(WSL)的用戶,Windows 11 與你習慣的 Windows 10 相比,提供了極大的改進體驗。它的安裝更容易,提供了更多的功能,並提供了比舊的解決方法(如運行 MobaXTerm 的 X11 服務器)更好的桌面集成。

而對於資深 Linux 用戶來說,新的 WSLg 功能仍不具備太多的吸引力。但它確實為“被困”在 Windows 環境中的 Linux 用戶消除了很多痛點,同時也為新手提供了最簡單的方法,使他們能夠嘗試新的東西。

如果你還在為是否或何時升級 Windows 11 而猶豫不決,其新的和改進的 WSL 可能是最好的理由。

(0)
上一篇 2021-10-12 11:42
下一篇 2021-10-12 11:42

相关推荐