共用方式為


設定 WSL 開發環境

建立 WSL 開發環境的最佳實踐分步指南。 瞭解如何執行命令來安裝使用 Ubuntu 或可設定為安裝其他 Linux 發行版本的預設 Bash 殼層、使用基本 WSL 命令、設定 Visual Studio Code 或 Visual Studio、Git、Windows 認證管理員、MongoDB、Postgres 或 MySQL 等資料庫、設定 GPU 加速、執行 GUI 應用程式等等。

開始使用

Windows 子系統 Linux 版隨附於 Windows 作業系統,但您必須啟用並安裝 Linux 發行版本,才能開始使用。

若要使用簡化的 --install 命令,您必須執行最新的 Windows 組建 (組建 20262 以上版本)。 若要檢查您的版本及組建號,請按 Windows 標誌鍵 + R,輸入 winver,然後選擇 確定。 您可以使用 設定Windows 更新助理 來更新。

如果您想要安裝其他非 Ubuntu 的 Linux 發行版本,或想要手動完成這些步驟,請參閱 WSL 安裝頁面以獲取更多詳細資訊。

開啟 PowerShell (或 Windows 命令提示字元),然後輸入:

wsl --install

--install 命令會執行下列動作:

  • 啟用選用的 WSL 和虛擬機器平台元件
  • 下載並安裝最新的 Linux 核心
  • 將 WSL 2 設定為預設值
  • 下載並安裝 Ubuntu Linux 發行版本 (可能需要重新開機)

在此安裝程式期間,您必須重新啟動電腦。

PowerShell 命令行執行 wsl --install

如果您遇到任何問題,請查看有關安裝問題排解的文章。

設定您的 Linux 使用者名稱和密碼

完成使用 WSL 安裝 Linux 發行版本的程序後,請使用 [開始] 功能表開啟發行版本 (預設為 Ubuntu)。 系統會要求您為 Linux 發行版本建立 [使用者名稱] 和 [密碼]

  • 使用者名稱密碼是每個各自 Linux 發行版本專屬,不會影響您的 Windows 使用者名稱。

  • 請注意,輸入 [密碼] 時,畫面上不會顯示任何內容。 這稱為盲目輸入。 您不會看到您正在輸入的內容,這完全正常。

  • 一旦您建立使用者名稱密碼,帳戶就會是您散發套件的預設使用者,而且會在啟動時自動登入。

  • 此帳戶將會被視為 Linux 系統管理員,並且能夠執行 sudo (超級使用者執行) 系統管理命令。

  • 在 WSL 上執行的每個 Linux 發行版本都有自己的 Linux 使用者帳戶和密碼。 每當您新增散發套件、重新安裝或重設時,都必須設定 Linux 使用者帳戶。

注意

隨 WSL 一起安裝的 Linux 發行版本由每個使用者安裝,無法與其他 Windows 使用者帳戶共用。 遇到使用者名稱錯誤嗎? StackExchange:我應該在 Linux 的使用者名稱中使用或不使用哪些字元?

Ubuntu command line enter UNIX usernameUbuntu 命令行輸入 UNIX 用戶名稱

若要變更或重設您的密碼,請開啟 Linux 發行版,然後輸入命令:passwd。 系統會要求您輸入目前的密碼,然後要求您輸入新密碼,然後確認您的新密碼。

如果您忘記 Linux 發行版的密碼:

  1. 開啟 PowerShell,並使用命令 `wsl -u root` 進入預設 WSL 發行版本的根目錄。

    如果您需要在非您的預設發行版上更新密碼,請使用命令:wsl -d Debian -u root,並將 Debian 替換為目標發行版的名稱。

  2. 在 PowerShell 中以根層級開啟 WSL 發行版之後,您就可以使用此命令來更新您的密碼:passwd <username>,其中 <username> 是發行版中您忘記密碼的使用者帳戶名稱。

  3. 系統會提示您輸入新的 UNIX 密碼,然後確認該密碼。 一旦系統告知您密碼已成功更新,請在 PowerShell 中使用命令 exit 關閉 WSL。

更新和升級套件

建議您使用發行版本慣用的套件管理員,定期更新和升級套件。 針對 Ubuntu 或 Debian,請使用下列命令:

sudo apt update && sudo apt upgrade

Windows 不會自動更新或升級您的 Linux 發行版本。 這是大部分 Linux 使用者希望能自行控制的工作。

新增其他發行版本

若要新增其他 Linux 發行版本,您可以透過 Microsoft Store、透過 --import 命令安裝,或側載您自己的自訂發行版本。 您也可以設定自訂 WSL 映像,以在整個企業分發。

設定 Windows Terminal

Windows Terminal 可以執行任何具有命令列介面的應用程式。 其主要功能包括多個索引標籤、窗格、Unicode 和 UTF-8 字元支援、GPU 加速文字轉譯引擎,以及讓您能夠建立自己的佈景主題並自訂文字、色彩、背景和快速鍵。

每當安裝新的 WSL Linux 發行版本,就會在 Windows 中創建一個新的執行個體,您可以根據自己的喜好自訂該執行個體。

我們建議在 Windows Terminal 上使用 WSL,特別是當您計劃使用多個命令列時。 請參閱 Windows Terminal 說明文件,以取得設定和自訂喜好設定的說明,包括:

Windows 螢幕截圖

檔案儲存體

  • 若要在 Windows 檔案總管中開啟 WSL 專案,請輸入:explorer.exe .
    務必在命令最後加上句號,以開啟目前的目錄。

  • 將您的專案檔儲存在您計畫使用的工具所搭配的相同作業系統上。
    如需最快的效能速度,如果您是在 Linux 命令列 (Ubuntu、OpenSUSE 等) 中使用 Linux 工具處理這些檔案,請將檔案儲存在 WSL 檔案系統中。 如果您使用 Windows 工具在 Windows 命令列 (PowerShell、命令提示字元) 中運作,請將檔案儲存在 Windows 檔案系統中。 檔案可以跨作業系統存取,但可能會大幅降低效能。

例如,儲存 WSL 專案檔時:

  • 使用 Linux 檔案系統根目錄:\\wsl$\<DistroName>\home\<UserName>\Project
  • 不是 Windows 檔案系統根目錄:C:\Users\<UserName>\Project/mnt/c/Users/<UserName>/Project$

Windows File Explorer displaying Linux storage顯示 Linux 記憶體的 Windows 檔案總管

安裝您慣用的程式碼編輯器

建議您使用 Visual Studio Code 或 Visual Studio,因為它們直接支援使用 WSL 進行遠端開發和偵錯。 Visual Studio Code 可讓您使用 WSL 作為功能完整的開發環境。 Visual Studio 提供 C++ 跨平台開發的原生 WSL 支援。

使用 Visual Studio Code

請遵循這份逐步指南來開始使用 Visual Studio Code 與 WSL,其中包括安裝遠端開發擴充套件包。 此延伸模組可讓您執行 WSL、SSH 或開發容器,以使用完整的 Visual Studio Code 功能集進行編輯和偵錯。 在不同、個別的開發環境之間快速交換並進行更新,而不必擔心影響本機電腦。

安裝並設定 VS Code 之後,您可以使用 VS Code 遠端伺服器開啟 WSL 專案,請輸入:code .

務必在命令最後加上句號,以開啟目前的目錄。

VS Code with WSL extensions displayedVS Code 顯示 WSL 擴充功能

使用 Visual Studio

請遵循此逐步指南,開始使用Visual Studio並與WSL進行C++跨平台開發。 Visual Studio 2022 可讓您在 Windows、WSL 發行版本和來自相同 Visual Studio 執行個體的 SSH 連線上建置和偵錯 CMake 專案。

在 Visual Studio 2022 中選取目標系統

使用 Git 設定版本管理

請遵循以下逐步指南,開始使用 Git 於 WSL 上,並將專案連線至 Git 版本控制系統,以及使用認證管理員進行驗證、使用 Git Ignore 檔案、瞭解 Git 換行結尾格式,以及使用內建於 VS Code 的 Git 命令。

命令行中顯示 git 版本命令行中顯示 git 版本

使用 Docker 設定遠端開發容器

請遵循此步驟指南,開始在 WSL 2 上使用 Docker 遠端容器,並使用 Windows 版 Docker 桌面版將您的專案連結到遠端開發容器。

Docker Desktop screenshotDocker Desktop 螢幕快照

設定資料庫

請遵循此分步指南,在 WSL 上開始使用資料庫,並將您的專案連結到 WSL 環境中的資料庫。 開始使用 MySQL、PostgreSQL、MongoDB、Redis、Microsoft SQL Server 或 SQLite。

Running MongoDB in Ubuntu via WSL在 Ubuntu 中透過 WSL 執行 MongoDB

設定 GPU 加速以加快效能

請遵循此逐步指南來在 WSL 中設定 GPU 加速的機器學習訓練,並利用您電腦的 GPU(圖形處理單元)來加速效能高負載的工作。

使用 WSL 執行 GPU 加速

基本 WSL 命令

您透過 WSL 安裝的 Linux 發行版本最適合使用 PowerShell 或 Windows 命令提示字元 (CMD) 進行管理。 如需使用 WSL 時要熟悉的基本命令清單,請參閱 WSL 命令參考指南

此外,許多命令在 Windows 和 Linux 之間互通。 以下提供幾個範例:

  • 從 Windows 命令列執行 Linux 工具:開啟 PowerShell,並輸入下列命令以使用 Linux 命令顯示 C:\temp 目錄的內容:wsl ls -la

  • 混合 Linux 和 Windows 命令:在此範例中,使用 Linux 命令 列出目錄中的檔案,接著使用 PowerShell 命令 篩選出包含「git」字串的結果:。 也可以將 Windows dir 命令與 Linux grep 命令混合使用:dir | wsl grep git

  • 直接從 WSL 命令列執行 Windows 工具<tool-name>.exe 例如,若要開啟 .bashrc 檔案 (每當 Linux 命令列啟動時執行的殼層指令碼),請輸入:notepad.exe .bashrc

  • 使用 Linux Grep 工具來運行 Windows ipconfig.exe 工具:從 Bash 輸入命令 ipconfig.exe | grep IPv4 | cut -d: -f2,或從 PowerShell 輸入 ipconfig.exe | wsl grep IPv4 | wsl cut -d: -f2。此範例示範如何在 Windows 文件系統上使用 ipconfig 工具,顯示目前的 TCP/IP 網路組態值,接著利用 Linux 工具 grep 搜尋並只保留 IPv4 的結果。

掛接外部磁碟機或 USB

請遵循此逐步指南,開始在 WSL 2 中掛載 Linux 磁碟

wsl mount command screenshotwsl 掛載命令螢幕截圖

執行 Linux GUI 應用程式

若要瞭解如何在 WSL 上設定及執行 Linux GUI 應用程式,請參考本教學課程。

其他資源