快轉到主要內容

如何在Windows 11安裝WSL2子系統 (Ubuntu)

Linux系統 虛擬機與容器技術 Linux Docker Android Windows Subsystem for Linux
✍ 切換正體/簡體字
Ivon Huang
作者
Ivon Huang
目錄

本文紀錄在Windows 11安裝WSL (Windows Subsystem for Linux)的過程。

WSL可以讓您在Windows電腦執行Linux程式、跑Docker容器、與主機共享檔案,協助開發程式。

Windows 11 + Ubuntu雙重開機比起來,WSL的執行效率要慢些,但至少比虛擬機快。

安裝後Linux系統(下圖為Ubuntu)會像應用程式一樣裝到Windows上,點選就可以進入Linux終端機。

1. 檢查系統是否符合WSL2需求 #

先將Windows 11更新至最新版本。

電腦與CPU必須支援虛擬化。

接著參考 Microsoft文件,啟用Hyper-V。Hyper-V僅Windows專業版有內建,家用版請另外搜尋教學。

  1. Hyper-V可透過指令啟動,搜尋「Windows終端機」,右鍵以系統管理員啟動

  2. 輸入以下指令啟用Hyper-V

Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All
  1. 重開機。

2. 安裝WSL2 #

  1. 搜尋「Windows終端機」,右鍵以系統管理員啟動

  2. 執行以下指令安裝WSL,預設下載Ubuntu

wsl --install
  1. 依照提示設定Ubuntu的帳號密碼,例如填入user1234

  2. 安裝後重開機,Ubuntu終端機的視窗應會跳出來,顯示下圖訊息。如果沒有,手動開啟終端機輸入wsl -d Ubuntu啟動WSL。

  3. 當prompt變成綠字就代表進入Ubuntu的shell,試試看sudo apt update更新套件的指令吧。

  4. 如果要將WSL「關機」,輸入exit退出。然後再開另一個終端機,終止WSL實例:

wsl --shutdown
# 如果沒反應,用此指令強制中止WSL服務
taskkill /F /im wslservice.exe
  1. 日後啟動WSL的方法:從應用程式列表點選「Ubuntu」圖示,或是從Windows終端機以指令啟動
wsl -d Ubuntu

3. 如何移除或重裝Ubuntu #

如果WSL檔案系統損壞導致無法進入Ubuntu的shell,你可能就得重裝WSL環境。

  1. 取消註冊Ubuntu
wsl --unregister ubuntu
  1. 到系統設定 → 應用程式,解除安裝Ubuntu應用程式。這會將Ubuntu與檔案系統一併刪除。

  2. 接著再重跑一次指令安裝Ubuntu。

4. 進階用法 #

除Ubuntu外,WSL尚支援安裝Debian、Arch Linux、Fedora、openSUSE等Linux發行版,只要從Microsoft Store下載對應的Linux發行版程式,再用wsl -d <發行版名稱>開機即可。

在安裝WSL後,可從檔案總管左側的「Linux「圖示」存取WSL系統的根目錄。該目錄僅在WSL開機時才可存取。

WSL可以 執行X11環境的Linux應用程式

還可以 跑Linux桌面環境

WSL可以直接跑Docker,無需安裝Docker Desktop,參見 Ubuntu安裝Docker Engine

如果要在WSL跑CUDA,請安裝 WSL專用的Nvidia驅動,不可直接裝Ubuntu系統的驅動。

其餘WSL的使用說明請參考 Microsoft官方文件

相關文章

用RDP+ZeroTier存取遠端Linux的Windows虛擬機的桌面
Linux系統 虛擬機與容器技術 Windows Linux ZeroTier QEMU
Joplin:開源筆記軟體使用教學,支援電腦與手機
Linux系統 Linux好用軟體 Joplin Linux Android
你知道Docker會讓Linux的UFW防火牆失效嗎?用ufw-docker解決此問題
Linux系統 Self-hosting自架 Linux Docker

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要登入Github帳號才能留言。支援markdown語法,方便您張貼程式碼,若要上傳圖片請貼Imgur連結。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。無論有無登入皆可留言。此處留言只有本站參與者看得到。若您選擇以訪客身份匿名留言,就不會收到後續回覆通知。