共用方式為


設定 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 發行版本 (可能需要重新開機)

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

執行 wsl 的 PowerShell 命令行 --install

如果您遇到任何問題,請查看安裝疑難排解一文。

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

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

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

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

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

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

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

注意

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

Ubuntu 命令行輸入 UNIX 用戶名稱

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

如果您忘記 Linux 散發套件的密碼:

  1. 開啟 PowerShell,並使用下列命令進入預設 WSL 散發套件的根目錄:wsl -u root

    如果您需要在不是預設值的散發套件上更新忘記的密碼,請使用命令:wsl -d Debian -u root,以目標散發套件的名稱取代 Debian

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

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

更新和升級套件

建議您使用發行版本慣用的套件管理員,定期更新和升級套件。 針對 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 Terminal 內為其建立新的執行個體,您可以針對自己的喜好設定自訂該執行個體。

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

Windows Terminal 螢幕快照

檔案儲存體

  • 若要在 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$

顯示 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 .

請務必在命令結尾新增句點,以開啟目前的目錄。

顯示 WSL 延伸模組的 VS Code

使用 Visual Studio

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

在 Visual Studio 2022 中選取目標系統

使用 Git 設定版本管理

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

在命令行中顯示 git 版本

使用 Docker 設定遠端開發容器

請遵循此逐步指南,開始在 WSL 2 上使用 Docker 遠端容器,並使用適用於 Windows 的 Docker Desktop 將您的專案連線到遠端開發容器。

Docker Desktop 螢幕快照

設定資料庫

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

透過 WSL 在 Ubuntu 中執行 MongoDB

設定 GPU 加速以加快效能

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

使用 WSL 執行 GPU 加速

基本 WSL 命令

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

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

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

  • 混合 Linux 和 Windows 命令:在此範例中,Linux 命令 ls -la 用來列出目錄中的檔案,然後使用 PowerShell 命令 findstr 來篩選包含「git」字組的結果:wsl ls -la | findstr "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 網路組態值,然後將它篩選為僅使用 grep 的 IPv4 結果,Linux 工具。

掛接外部磁碟機或 USB

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

wsl 掛接命令螢幕快照

執行 Linux GUI 應用程式

請遵循本教學課程,瞭解如何在 WSL 上設定及執行 Linux GUI 應用程式

其他資源