在Windows上運行Linux,WSL安裝、用途、使用教學指南

對許多開發人員或電腦愛好者而言,Windows 的便利性與 Linux 的強大生態系統同等重要。過去,如果想要同時在 Windows 上使用 Linux,可能需要透過雙重開機(Dual Boot)或使用虛擬機器(Virtual Machine)來切換系統環境。這兩種方式雖然能解決問題,卻在系統資源、切換效率及便利性等方面存在一定的限制,也難以同時享受windows和linux的優勢。

為了改善上述情況,微軟在 Windows 10 的特定版本之後推出了「Windows Subsystem for Linux (WSL)」,或者你也可以稱它為子系統 linux 版,並在後續的更新中陸續進行優化。WSL 允許在 Windows 上執行原生的 Linux 環境,同時具備非常高的整合度與不錯的效能表現。尤其在 WSL 2 問世後,更進一步改善了檔案系統 I/O 效能,並提供更完整的 Linux 核心兼容性。

本篇文章將詳細說明 WSL 的功能與優點、安裝流程與設定步驟、常見的安裝問題、WSL 1 與 WSL 2 的差異、常用指令及其他進階應用。使您可以更加瞭解並熟悉這項技術,讓 Windows 與 Linux 的融合發揮最大效益。

什麼是 WSL?

WSL(Windows Subsystem for Linux)是微軟推出的一項功能,可讓使用者在 Windows 10 (版本 2004,組建 19041 以上) 及 Windows 11 的系統上,直接執行 Linux 發行版與命令行工具,而無需傳統虛擬機器或雙重開機。WSL 主要有以下幾項特點:

  • 安裝容易:只需幾個指令或透過微軟市集 (Microsoft Store) 安裝,即可快速取得 Ubuntu、OpenSUSE、Kali、Debian、Arch Linux 發行版。
  • 效能相對優異:WSL 透過核心層的整合,提供了與原生 Linux 相當接近的效能,尤其是在 WSL 2 環境中,支援較完整的 Linux 核心呼叫與較佳的 I/O 表現。
  • 輕量化:由於不需要像傳統虛擬機器那樣使用大量的系統資源,WSL 在 RAM 與 CPU 的佔用上通常更低。
  • 整合度高:可輕鬆地在 Linux 與 Windows 之間互相存取檔案,並直接於 Windows 上執行 Linux 指令或在 Linux 中執行 Windows 應用程式(部分需透過相容工具)。

系統需求與相容性

下表彙整了安裝 WSL 的最低需求與建議:

條件 詳細說明
作業系統 – Windows 10 版本 2004 (組建 19041) 或以上

– Windows 11

– Windows Server(部分版本支援)

系統架構 64 位元 (x64-based)
虛擬化技術 已在 BIOS/UEFI 中啟用 Intel VT-x 或 AMD-V 功能
可用磁碟空間 建議預留至少 5~10 GB 的空間用於 Linux 檔案系統與使用者空間
Windows 更新 建議開啟「當您更新 Windows 時,接收其他 Microsoft 產品的更新」,以自動取得最新的 WSL Update 核心與驅動程式,可參考 Microsoft Learn
網路連線 若要從微軟市集安裝發行版,安裝過程中需要穩定的網路
顯示卡驅動程式 若需使用 WSLg 或 GPU 加速功能,需安裝對應廠商的支援 WSL 的顯示卡驅動程式(Intel、NVIDIA、AMD)

注意: 若 Windows 版本過舊,可能需要進行系統升級,或依循手動安裝步驟以啟用早期的 WSL 功能。

WSL 1 與 WSL 2 的差異

WSL 目前存在兩種主要架構版本:WSL 1WSL 2。如下表所示:

特色 WSL 1 WSL 2
核心設計 以 NT 核心對 Linux 系統呼叫進行翻譯,不存在真正的 Linux 核心 透過輕量級虛擬機 (VM) 方式運行完整的 Linux 核心,擁有完整系統呼叫支援
檔案系統效能 在存取 Windows 檔案系統(C:\等)時通常較快,但在 Linux 原生檔案系統(如ext4)中效能一般 大幅提升 Linux 原生檔案系統的 I/O 效能,與近乎原生的效能表現
系統呼叫支援 不支援部分進階的 Linux 系統呼叫 系統呼叫的相容度更高,能執行更多的應用程式與服務
記憶體使用 以翻譯層實作,通常佔用較少記憶體 使用虛擬機方式,在高負載時會視需要動態調整,但整體需求量也可能較 WSL 1 稍高
適用場合 基本開發測試、簡單工具的執行 需要更接近原生 Linux 的完整功能,如 Docker 容器、圖形介面 (WSLg) 或高效能運算
可同時併存 可以與 WSL 2 並存,同一台機器不同發行版可選擇使用哪一個版本 同上,彼此之間獨立存在

如果你需要在 Linux 中執行 Docker、完整機器學習套件或需要高 I/O 效能的服務,建議使用 WSL 2。若只需在 Windows 上簡單地執行一些 Linux 工具指令,如 grep, sed, awk 等,WSL 1 也能滿足需求。

安裝與啟用 WSL

1. 檢查作業系統版本

  1. 按下 Win + R,輸入 winver。
  2. 查看「版本」與「組建」編號,確保您的 Windows 10 必須是 2004 (組建 19041) 以上或 Windows 11。

如果版本不符,可以透過「設定 → 更新與安全 → Windows Update」來檢查並更新系統。

2. 啟用 WSL 與虛擬機器平台

在進行自動安裝前,請先確保已開啟系統對虛擬化技術的支援。如果不確定,可前往 BIOS/UEFI 中查詢「Virtualization Technology (VT-x/AMD-V)」或相近名稱是否已啟用。

自動安裝 (建議做法)

  1. 系統管理員身分開啟 PowerShell (Power 權限)或 Windows 命令提示字元(CMD)。
  2. 輸入:wsl –install
  3. 完成後系統會提示重新開機,請依指示重新啟動電腦。

此方式會自動安裝所需的組件,包括:

  • Windows 子系統 Linux (WSL)
  • 虛擬機器平台
  • 最新的 Linux 核心
  • 預設的 Linux 發行版 (Ubuntu)

手動安裝

若無法使用 wsl –install 或版本過舊,也可手動啟用功能:

  1. 在系統管理員模式的 PowerShell 中輸入:
    dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
    dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
  2. 完成後重新啟動電腦。
  3. 下載並安裝 WSL 2 核心更新套件
  4. 確認安裝成功後,再進行 Linux 發行版的安裝與設定。

安裝與管理 Linux 發行版

1. 選擇 Linux 發行版

WSL 支援多種 Linux 發行版,你可透過以下指令查詢可用版本:

wsl --list --online

wsl -l -o

這些可用的發行版通常包括:Ubuntu、Debian、Kali Linux、OpenSUSE、Fedora 等。

2. 安裝特定 Linux 發行版

若想安裝特定版本的 Linux,可使用:

wsl --install -d <發行版名稱>

例如安裝 Ubuntu LTS 版本:

wsl --install -d Ubuntu-22.04

或直接安裝預設的 Ubuntu (最新版):

wsl --install -d Ubuntu

3. 初次啟動 Linux 發行版

  1. 安裝完成後,在啟動該發行版時,系統會要求建立一個新的 Linux 使用者名稱與密碼。
  2. 輸入的帳號密碼與 Windows 帳號無關,只適用於該 WSL 發行版內的 Linux 環境。
  3. 完成後就能進入該 Linux 的終端機。

4. 更新系統

在進入 Linux 終端機後,強烈建議先更新套件:

sudo apt update && sudo apt upgrade -y

(此指令適用於 Ubuntu / Debian 系系統,其他發行版請使用對應的套件管理器。)

設定 WSL 版本:WSL 1 或 WSL 2

  1. 切換預設安裝版本
    若想讓之後安裝的發行版皆使用 WSL 1 或 WSL 2,可使用:

    wsl --set-default-version <版本號> 

    其中 <版本號> 可填入 1 或 2。

  2. 切換已安裝發行版的版本
    可透過下列指令查看目前安裝的發行版清單與版本:

    wsl -l -v

    若要切換特定發行版到 WSL 2:

    wsl --set-version <發行版名稱> 2

    或切換回 WSL 1:

    wsl --set-version <發行版名稱> 1

WSL 的常用功能與使用技巧

1. 在 Windows 與 Linux 之間共享檔案

  • Windows 系統磁碟通常會掛載在 Linux 的 /mnt/<磁碟代號> 下,例如 C 磁碟在 /mnt/c。
  • Linux 側的檔案則可以透過 Windows 檔案總管左側的「Linux」圖示或輸入 \\wsl$\<發行版名稱>\home\<使用者> 的 UNC 路徑存取,也可在對應資料夾中進行管理。

2. 執行 GUI 應用程式 (WSLg)

  • 在新版 WSL 2 中(Windows 10 組建 19044+ 或 Windows 11),支援直接啟動 Linux GUI 應用程式,並與 Windows 完整整合。
  • 開發者可以直接啟動如 Gedit、GIMP、VLC 等常見的圖形介面工具,無需額外安裝 X Server。
  • 建議安裝顯示卡廠商支援 WSL GPU 加速的驅動程式,以確保圖形效能。

3. 在 WSL 中使用 Docker

  • Docker Desktop for Windows 在與 WSL 2 整合後,可使 Docker 容器透過原生 Linux 核心執行,效能與相容性更優於傳統 Hyper-V。
  • 在安裝 Docker Desktop 時,選擇使用 WSL 2 後端即可。

4. 使用 Windows Terminal(建議)

  • Windows Terminal 提供分頁、多重窗格、可自訂佈景主題與字型等功能,非常適合同時管理多個命令列介面 (PowerShell、CMD、WSL)。
  • 可從 Microsoft Store 免費安裝 Windows Terminal,或在 GitHub 中下載。

5. 權限與檔案屬性

  • 在 WSL 的 Linux 檔案系統內,可使用 chmod、chown 等指令設定權限。
  • 若是存取 /mnt/c 等掛載的 Windows 檔案系統,權限部分是以 Windows NTFS 為主,無法完全使用 Linux 的方式設定。

效能與優化建議

  1. 避免頻繁跨系統讀寫
    如先前提到,若應用程式運行時頻繁存取檔案,建議將檔案放在 Linux 的原生檔案系統(ext4)內,而非在 Windows 分區下操作,以降低 I/O 延遲。
  2. 使用 SSD
    安裝在 SSD 上通常能獲得更佳的讀寫速度,對於需要大量檔案存取的開發工作會有明顯幫助。
  3. 調整記憶體限制
    在 WSL 2 可以透過建立 .wslconfig(位於使用者主目錄,如 C:\Users\<你的用戶名>\.wslconfig)設定檔,來控制虛擬機最大記憶體使用量、處理器數量、頁面檔大小等。例如:

    [wsl2]
    memory=4GB
    processors=2
    swap=2GB
    localhostForwarding=true

    設定後重新啟動 WSL (wsl –shutdown) 即可生效。

  4. 善用 Windows 與 Linux 的協同工作
    • 在 Linux 環境中使用常用的 GNU/Linux 工具,如 grep, awk, sed, curl 等,效率更高。
    • 與此同時,Windows 環境下可使用 Visual Studio Code (VS Code)、Excel 或其他桌面程式做圖形化操作或程式碼編輯,達到最佳整合。

常見問題 (FAQ)

安裝過程中遇到錯誤 0x80370102?

這通常是因為 BIOS/UEFI 中未啟用硬體虛擬化技術(VT-x/AMD-V)。請重開機並進入 BIOS/UEFI 設定,並確認已啟用虛擬化相關選項。

我想使用較舊版本 Windows 10 如何安裝?

若 Windows 10 版本低於 2004,可參考「手動安裝 WSL 的舊版本步驟」,進行傳統方式的安裝與設定。

執行某些 32 位元 Linux 應用程式失敗?

WSL 1 與 WSL 2 皆主要支援 64 位元可執行檔 (ELF64)。部分 32 位元程序可能缺乏相容性,建議尋找對應的 64 位元版本,或直接使用虛擬機器或 Docker 容器來執行。

WSL 的檔案系統效能不如預期?

若主要在 WSL 內操作大量檔案,盡量將專案或檔案儲存在 Linux 的根檔案系統(例如 /home)下,而非 /mnt/c 等 Windows 檔案路徑。若仍需要與 Windows 應用程式共享檔案,可建立符號連結或在需要時再複製檔案。

如何移除或重置某個 Linux 發行版?

若要移除,可在 PowerShell 中輸入:

wsl --unregister <發行版名稱>

這將刪除該發行版的全部資料。若只是想重新安裝,可先移除後再重新安裝。

在安裝 Docker 時遇到網路連線問題或無法啟動

請確保已使用 WSL 2 並啟用 Docker Desktop 的「Use the WSL 2 based engine」。如果有防火牆或 Proxy,請檢查其設定。

可以同時執行多個不同的 Linux 發行版嗎?

可以。WSL 支援安裝並同時使用多個發行版,例如同時運行 Ubuntu 與 Debian,只要系統資源足夠,彼此獨立存在互不影響。

總結

WSL 的問世大幅降低了開發者在 Windows 與 Linux 生態系統之間的切換成本。對於需要同時使用 Windows 應用程式與 Linux 工具的工程師與使用者,WSL 提供了輕量級且具備高相容性的解決方案。

透過 WSL 2,使用者可以享受更完整的 Linux 核心與系統呼叫支援;而各種發行版的多樣化選擇,也能滿足不同使用者對開發環境的喜好。隨著 Microsoft 與社群的持續投入,WSL 功能與效能都在持續演進,從指令列工具、Docker、機器學習,到圖形應用程式 (WSLg),都能在 WSL 中快速上手並且無痛整合到 Windows 工作流程中。

若您是初學者,只需簡單輸入 wsl –install 並重啟電腦,短短幾分鐘之內就能獲得一個能夠跑在 Windows 上的完整 Ubuntu 環境,並開始探索龐大的 Linux 世界。對於進階使用者,WSL 提供了相當多的客製化與優化選項,讓你能針對開發需求靈活配置。

展望未來,WSL 與 Windows 在整合性上的提升,將可能進一步拉近 Linux 與 Windows 的距離,使得「一台電腦,即可同時擁抱兩大作業系統」的理想成為許多人的日常。

資料來源

返回頂端