戰(zhàn)(一):Windows 從 0 配置 WSL2 + Ubuntu 24.04 + Docker)
本文定位本文定位Windows AI 開發(fā)環(huán)境「通用教程 排障手冊(cè)」環(huán)境正常網(wǎng)絡(luò)通、系統(tǒng)更新完整→ 看第 0-5 部分裝 → 用 → 進(jìn)階 → 卸載環(huán)境特殊微軟服務(wù)器不通、內(nèi)核缺失、系統(tǒng)缺補(bǔ)丁→ 看第 6 部分排障路線記錄時(shí)間2026-08-08排障路線為本機(jī)實(shí)測(cè)所有命令均已驗(yàn)證目錄第 0 部分本文怎么用讀者導(dǎo)航第 1 部分準(zhǔn)備工作1.1 系統(tǒng)要求1.2 開啟 Windows 功能1.3 終端說明用哪個(gè)終端跑哪些命令第 2 部分安裝晴天路線 · 3 分鐘快速版2.1 一鍵安裝 WSL Ubuntu2.2 檢查是否安裝成功2.3 安裝 Docker2.4 驗(yàn)證第 3 部分簡(jiǎn)單使用3.1 打開/退出 Linux 終端3.2 訪問 Linux 和 Windows 文件3.3 在 Windows 命令行運(yùn)行 Linux 命令3.4 安裝一些必備軟件3.5 打開軟件第 4 部分進(jìn)階安裝4.1 安裝其他 Linux 系統(tǒng)4.2 修改虛擬磁盤位置遷移到非 C 盤第 5 部分卸載 WSL第 6 部分完整排障路線本機(jī)實(shí)測(cè)6.1 什么時(shí)候走這條線先診斷6.2 下載安裝包并校驗(yàn)6.3 安裝 WSL6.4 導(dǎo)入 Ubuntu 到指定目錄6.5 安裝 Docker6.6 配置國(guó)內(nèi)鏡像加速第 7 部分常見命令速查第 8 部分常見問題排查FAQ第 9 部分附錄第 0 部分本文怎么用讀者導(dǎo)航你的情況看哪里網(wǎng)絡(luò)正常、系統(tǒng)更新完整、不挑安裝盤第 1-5 部分約 3 分鐘裝完微軟服務(wù)器連不上 /wsl --install卡死6.1 診斷 → 6.2-6.4 離線安裝裝完想裝其他 Linux 發(fā)行版 / 遷移到 D/E 盤第 4 部分想卸載干凈第 5 部分遇到報(bào)錯(cuò)ActiveX 彈窗、HCS 報(bào)錯(cuò)等第 8 部分 FAQ記不住命令第 7 部分速查表本文排障路線是本機(jī)Win10 22H2微軟網(wǎng)絡(luò)不通 系統(tǒng)缺補(bǔ)丁實(shí)測(cè)記錄每一步都有替代方案。第 1 部分準(zhǔn)備工作1.1 系統(tǒng)要求Windows 10 版本 2004 及以上內(nèi)部版本 19041 及以上或Windows 11推薦 Windows 11WSL2 圖形化窗口支持更好Win10 基本類似本文排障路線即 Win10 22H2 實(shí)測(cè)磁盤空間Ubuntu 約需 2-3GBvhdx 動(dòng)態(tài)增長(zhǎng)另留 Docker 鏡像空間1.2 開啟 Windows 功能在底部搜索框搜索啟用或關(guān)閉 Windows 功能并打開勾選以下兩項(xiàng)WSL2 必需?適用于 Linux 的 Windows 子系統(tǒng)?虛擬機(jī)平臺(tái)點(diǎn)擊確定重啟電腦如果勾選后依然報(bào)錯(cuò)也可以用命令行強(qiáng)制開啟管理員 PowerShell[PowerShell · 管理員] dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart執(zhí)行完重啟生效。1.3 終端說明用哪個(gè)終端跑哪些命令終端怎么打開本文標(biāo)記用來干嘛PowerShell按Win鍵 → 輸入powershell→ 回車[PowerShell]Windows 側(cè)命令下載、裝 MSI、import、查狀態(tài)CMD按WinR→ 輸入cmd→ 回車[CMD]極少用只在讀取 wsl 中文輸出時(shí)用WSL (Ubuntu)裝好后在 PowerShell/CMD 里敲wsl進(jìn)入[WSL]所有 Linux 內(nèi)部命令apt、docker 等核心口訣操作Windows 系統(tǒng)/文件→ PowerShell操作Ubuntu 系統(tǒng)/軟件→ 先進(jìn)wsl再執(zhí)行碰到wsl開頭的命令 → 在 PowerShell 里直接敲wsl 是 Windows 的程序如果你不想?yún)^(qū)分全程只用 PowerShell看到[WSL]的命令就先進(jìn)wsl回車進(jìn)入 Ubuntu命令敲完用exit退回 Windows。第 2 部分安裝晴天路線 · 3 分鐘快速版適用條件缺一不可否則跳到第 6 部分排障路線? 能訪問微軟服務(wù)器aka.ms、Microsoft Store 不超時(shí)? 系統(tǒng)更新完整Win10 22H2 或 Win11 最新補(bǔ)丁? 不用管 WSL 裝在哪個(gè)盤默認(rèn) C 盤或愿意先裝 C 再遷移見 4.2滿足以上條件總共就 3 條命令。2.1 一鍵安裝 WSL Ubuntu[PowerShell · 管理員] wsl --install -d Ubuntu這條命令自動(dòng)完成啟用 WSL 功能 → 裝內(nèi)核 → 下載安裝 Ubuntu。裝完重啟電腦。重啟后第一次啟動(dòng) Ubuntu 會(huì)讓你創(chuàng)建 Linux 用戶名和密碼如ameng/ 自己設(shè)的密碼。2.2 檢查是否安裝成功[PowerShell / CMD] wsl -l -v看到類似這樣的輸出有Ubuntu、VERSION為2、帶*號(hào)即安裝成功如果wsl -l -v報(bào)HCS_E_SERVICE_NOT_AVAILABLE→ 第 1.2 節(jié)的功能沒開好或沒重啟回去確認(rèn)并重啟如果列表為空 / 沒有 Ubuntu → 手動(dòng)安裝見 4.12.3 安裝 Docker[WSL] sudo apt update sudo apt install -y docker.io sudo systemctl enable --now docker sudo usermod -aG docker $USER # 當(dāng)前用戶免 sudo 用 docker需重新登錄生效2.4 驗(yàn)證[WSL] docker run --rm hello-world # 看到 Hello from Docker! 即成功第 3 部分簡(jiǎn)單使用3.1 打開/退出 Linux 終端在 PowerShell 或 CMD 輸入wsl稍等片刻就進(jìn)入了 Linux 系統(tǒng)提示符變成類似userhost:/mnt/c/...。退出 Linux 回到 Windows輸入exit即可。?? 可能報(bào)錯(cuò)由于未安裝所需的特性無法啟動(dòng)操作。 錯(cuò)誤代碼: Wsl/Service/CreateInstance/CreateVm/HCS/HCS_E_SERVICE_NOT_AVAILABLE原因沒正確開啟適用于 Linux 的 Windows 子系統(tǒng)/“虛擬機(jī)平臺(tái)”或開了沒重啟?;氐?1.2 節(jié)確認(rèn)并重啟電腦。3.2 訪問 Linux 和 Windows 文件Windows 里看 Linux 文件在文件資源管理器地址欄輸入\\wsl$\回車能看到所有發(fā)行版文件夾點(diǎn)進(jìn)去就是 Linux 根目錄或直接\\wsl$\Ubuntu。Linux 里看 Windows 盤/mnt/c/ 對(duì)應(yīng) C 盤 /mnt/d/ 對(duì)應(yīng) D 盤 /mnt/e/ 對(duì)應(yīng) E 盤例如cd /mnt/c/Users/你的用戶名/Desktop/ # 切換到 Windows 桌面 cp /mnt/c/Users/.../file.txt ~/ # 復(fù)制文件到 Linux 家目錄更簡(jiǎn)單的方法在需要的 Windows 目錄中按住Shift右鍵 → “在終端中打開”PowerShellcmd 不行進(jìn)入后直接敲wsl就在該目錄下打開 Linux。在 Linux 終端打開 Windows 資源管理器[WSL] explorer.exe .3.3 在 Windows 命令行運(yùn)行 Linux 命令兩種方式wsl command # way 1 wsl bash -c command # way 2?? 注意每次wsl都是新開一個(gè) Linux 會(huì)話兩條命令之間狀態(tài)不連續(xù)。串聯(lián)多命令必須用 way 2wsl bash -c command1 command23.4 安裝一些必備軟件剛裝好的系統(tǒng)幾乎沒軟件用 apt 安裝sudo apt install 軟件名sudo以超級(jí)用戶權(quán)限執(zhí)行會(huì)要密碼就是裝系統(tǒng)時(shí)設(shè)的那個(gè)aptUbuntu/Debian 的包管理工具推薦先裝sudo apt install gedit # 圖形化文本編輯器類似記事本 sudo apt install eog # 圖片查看器 sudo apt install vim # 終端編輯器 sudo apt install x11-apps # X11 測(cè)試工具含 xclock可驗(yàn)證 GUI 是否正常3.5 打開軟件安裝完成后直接在 Linux 終端輸入軟件名即可啟動(dòng)例如gedit圖形界面程序會(huì)通過 WSLg 直接顯示到 Windows 桌面。第 4 部分進(jìn)階安裝4.1 安裝其他 Linux 系統(tǒng)方式一Microsoft Store打開 Microsoft Store搜索WSL或發(fā)行版名如Debian找到 “for WSL” 的版本 → 獲取/安裝 → 按提示設(shè)用戶名密碼。方式二命令行[PowerShell] wsl --list --online # 查看可安裝的發(fā)行版列表 wsl --install -d Ubuntu-24.04 # 安裝指定發(fā)行版查看已安裝的發(fā)行版[PowerShell / CMD] wsl -l -v帶星號(hào)*的是默認(rèn)發(fā)行版直接wsl進(jìn)入的就是它。進(jìn)入/切換/設(shè)默認(rèn)[PowerShell / CMD] wsl -d Ubuntu # 直接進(jìn)入 Ubuntu wsl -d Debian # 直接進(jìn)入 Debian wsl --set-default Debian # 把 Debian 設(shè)為默認(rèn)4.2 修改虛擬磁盤位置遷移到非 C 盤Linux 的軟件、文檔都放在一個(gè)虛擬磁盤vhdx里默認(rèn)在 C 盤。C 盤緊張時(shí)可以遷走。先找到它的物理位置[PowerShell] Get-ChildItem HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss -Recurse輸出里的BasePath就是物理位置。遷移導(dǎo)出/導(dǎo)入法推薦[PowerShell] wsl --shutdown # 1. 關(guān)閉所有 WSL 實(shí)例 wsl --export Ubuntu D:\path\backup\ubuntu-backup.tar # 2. 導(dǎo)出為 tar 備份 # 把 D:\path\backup\ 換成實(shí)際路徑先建好目錄 wsl --unregister Ubuntu # 3. 注銷原發(fā)行版會(huì)刪除 C 盤原系統(tǒng)數(shù)據(jù) wsl --import Ubuntu D:\new\wsl\location D:\path\backup\ubuntu-backup.tar --version 2 # 4. 導(dǎo)入到新位置完成后wsl -l -v確認(rèn) Ubuntu 存在且 VERSION2去新目錄看ext4.vhdx是否就位。也可以直接用wsl --import-in-place 發(fā)行版 文件.vhdx從 vhdx 直接導(dǎo)入WSL2 專用適合已有 vhdx 的情況。第 5 部分卸載 WSL卸載文章很少講但卸載不干凈會(huì)導(dǎo)致以后再裝出問題。按以下順序記錄虛擬磁盤位置卸載后它不會(huì)自動(dòng)刪占空間最大[PowerShell] Get-ChildItem HKCU:\Software\Microsoft\Windows\CurrentVersion\Lxss -Recurse關(guān)閉所有 WSL[PowerShell] wsl --shutdown注銷發(fā)行版逐個(gè)刪除不要在設(shè)置→應(yīng)用里刪否則 WSL 注冊(cè)表不干凈再裝會(huì)出問題[PowerShell] wsl --list # 查看已安裝的發(fā)行版名稱 wsl --unregister 發(fā)行版名稱卸載 WSL 核心組件[PowerShell] wsl --uninstall刪除虛擬磁盤打開第 1 步記錄的位置刪除 vhdx 文件可能已被刪不管它。最后重啟電腦。第 6 部分完整排障路線本機(jī)實(shí)測(cè)本機(jī)實(shí)際踩的坑也是本文檔存在的意義內(nèi)置 wsl.exe 為舊版10.0.19041.x缺 WSL2 內(nèi)核微軟分發(fā)通道aka.ms、Microsoft Store網(wǎng)絡(luò)超時(shí)錯(cuò)誤碼0x80072ee2wsl --install卡死但GitHub 與 Ubuntu 官方鏡像可達(dá)→ 全部改為離線/手動(dòng)下載新版 WSL 的 WSLg 組件依賴系統(tǒng)缺失的 APIGetTempPath2W→ 彈窗見 9.16.1 什么時(shí)候走這條線先診斷1. 查看 WSL 狀態(tài)注意編碼問題[PowerShell] wsl --status??編碼坑內(nèi)置舊版 wsl.exe 輸出 UTF-16在 PowerShell 里直接讀會(huì)亂碼。重定向到文件再按 Unicode 讀[PowerShell] $f Join-Path $env:TEMP wsl_status.txt cmd /c wsl --status $f 21 Get-Content $f -Encoding Unicode Remove-Item $f -ErrorAction SilentlyContinue診斷結(jié)果示例缺內(nèi)核默認(rèn)版本2 ... 未找到 WSL 2 內(nèi)核文件。若要更新或恢復(fù)內(nèi)核請(qǐng)運(yùn)行wsl --update。2. 查看已安裝發(fā)行版與內(nèi)核文件[PowerShell] cmd /c wsl --list --verbose %TEMP%\wsl_l.txt 21 Get-Content $env:TEMP%\wsl_l.txt -Encoding Unicode # 檢查內(nèi)核是否存在于系統(tǒng)目錄 Get-ChildItem C:\Windows\System32\lxss\tools\本機(jī)結(jié)果lxss\tools下只有bsdtar / ext4.vhdx.gz / init / initrd.img沒有kernel文件→ 內(nèi)核缺失確認(rèn)。3. 檢查網(wǎng)絡(luò)連通性決定走晴天路線還是排障路線[PowerShell] # 微軟通道不通 必須走排障路線 try { (Invoke-WebRequest -Uri https://aka.ms/wsl2kernel -Method Head -TimeoutSec 8 -ErrorAction Stop).StatusCode } catch { FAIL: $($_.Exception.Message) } # 可用通道返回 200 說明可走手動(dòng)下載 (Invoke-WebRequest -Uri https://github.com -Method Head -TimeoutSec 8 -UseBasicParsing -ErrorAction Stop).StatusCode (Invoke-WebRequest -Uri https://cloud-images.ubuntu.com/wsl/ -Method Head -TimeoutSec 8 -UseBasicParsing -ErrorAction Stop).StatusCode4. 其他環(huán)境信息[PowerShell] # 當(dāng)前 shell 是否管理員MSI 安裝需要False 也沒關(guān)系后面會(huì)彈 UAC $id [Security.Principal.WindowsIdentity]::GetCurrent() (New-Object Security.Principal.WindowsPrincipal($id)).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator) # 目標(biāo)盤剩余空間 Get-PSDrive E | Select-Object {nFreeGB;e{[math]::Round($_.Free/1GB,1)}}6.2 下載安裝包并校驗(yàn)全程 PowerShell。1. 找到 WSL 的下載地址GitHub API[PowerShell] $release Invoke-RestMethod https://api.github.com/repos/microsoft/WSL/releases/latest $release.tag_name # 例如 2.7.11 $release.assets | Where-Object { $_.name -like *x64.msi } | Select-Object name, browser_download_url??重要Win10 22H2 請(qǐng)裝2.7.10不要裝 2.7.11原因見 9.1 WSLg 彈窗。地址https://github.com/microsoft/WSL/releases/download/2.7.10/wsl.2.7.10.0.x64.msi2. 找到 Ubuntu rootfs 的下載地址https://cloud-images.ubuntu.com/wsl/releases/24.04/current/ # 選 amd64 版本 # ubuntu-noble-wsl-amd64-wsl.rootfs.tar.gz 約 340MB # 同目錄有 SHA256SUMS 校驗(yàn)文件3. 下載??限速坑GitHub/微軟 CDN 單線程可能被限到 ~60KB/s。用多線程分塊下載見 9.2或直接[PowerShell] New-Item -ItemType Directory -Force -Path E:\WSL\downloads | Out-Null curl.exe -L --retry 3 -o E:\WSL\downloads\wsl.2.7.10.0.x64.msi https://github.com/microsoft/WSL/releases/download/2.7.10/wsl.2.7.10.0.x64.msi curl.exe -L --retry 3 -o E:\WSL\downloads\ubuntu-noble-wsl-amd64-wsl.rootfs.tar.gz https://cloud-images.ubuntu.com/wsl/releases/24.04/current/ubuntu-noble-wsl-amd64-wsl.rootfs.tar.gz4. SHA256 校驗(yàn)必做防下載損壞[PowerShell] $msiHash (Get-FileHash E:\WSL\downloads\wsl.2.7.10.0.x64.msi -Algorithm SHA256).Hash.ToLower() $rootfsHash (Get-FileHash E:\WSL\downloads\ubuntu-noble-wsl-amd64-wsl.rootfs.tar.gz -Algorithm SHA256).Hash.ToLower() # 期望值MSI 來自 GitHub API digestrootfs 來自官方 SHA256SUMS # 2.7.10 的 MSI 哈希需以當(dāng)時(shí) GitHub API 返回為準(zhǔn)rootfs 如下 $rootfsHash -eq 8251e27ffff381a4af5f41dcb94d867de3e0d9774a9241908ab34555d99315ea # 應(yīng)為 True輸出True才繼續(xù)。False 下載損壞刪掉重新下載。6.3 安裝 WSLPowerShell 執(zhí)行。MSI 安裝需要管理員權(quán)限會(huì)彈出 UAC 窗口點(diǎn)是。[PowerShell] $msi E:\WSL\downloads\wsl.2.7.10.0.x64.msi $log E:\WSL\downloads\wsl_install.log $p Start-Process msiexec.exe -ArgumentList /i $msi /qn /norestart /l*v $log -Verb RunAs -PassThru -Wait $p.ExitCode # 0 安裝成功驗(yàn)證[PowerShell] wsl --version預(yù)期輸出注意 MSRDC 應(yīng)為 1.2.6676不是 7214WSL 版本 2.7.10.0 內(nèi)核版本 6.18.33.2-2 MSRDC 版本 1.2.66766.4 導(dǎo)入 Ubuntu 到指定目錄PowerShell 執(zhí)行。[PowerShell] New-Item -ItemType Directory -Force -Path E:\WSL\Ubuntu | Out-Null $rootfs E:\WSL\downloads\ubuntu-noble-wsl-amd64-wsl.rootfs.tar.gz wsl --import Ubuntu E:\WSL\Ubuntu $rootfs --version 2??不要用wsl --install Ubuntu --location ...網(wǎng)絡(luò)受限環(huán)境下會(huì)卡死。wsl --import完全離線。設(shè)為默認(rèn)發(fā)行版并驗(yàn)證[PowerShell] wsl --set-default Ubuntu cmd /c wsl --list --verbose %TEMP%\wsl_l3.txt 21 Get-Content $env:TEMP%\wsl_l3.txt -Encoding Unicode預(yù)期輸出*表示默認(rèn)NAME STATE VERSION * Ubuntu Stopped 2目錄驗(yàn)證E:\WSL\Ubuntu\ext4.vhdx約 1.2GB動(dòng)態(tài)增長(zhǎng)。6.5 安裝 Docker先進(jìn)入 Ubuntuwsl回車以下全部在 WSL 里執(zhí)行。前置檢查 systemd新版 WSL 默認(rèn)啟用[WSL] ps -p 1 -o comm # 輸出 systemd 可用安裝 docker-ce官方源[WSL] apt-get update -qq apt-get install -y -qq ca-certificates curl gnupg install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc chmod ar /etc/apt/keyrings/docker.asc echo deb [archamd64 signed-by/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu noble stable /etc/apt/sources.list.d/docker.list apt-get update -qq DEBIAN_FRONTENDnoninteractive apt-get install -y -qq docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin systemctl enable docker systemctl start docker docker --version若download.docker.com也不可達(dá)改用 Ubuntu 自帶源apt install docker.io版本略舊但可用。驗(yàn)證[WSL] systemctl is-active docker # 輸出 active docker run --rm hello-world # 成功 端到端可用若卡住先做 6.66.6 配置國(guó)內(nèi)鏡像加速前提本機(jī)registry-1.docker.io直連超時(shí)。加速器狀態(tài)隨時(shí)間變化裝前先測(cè)。1. 測(cè)試可用加速器PowerShell[PowerShell] $mirrors (https://docker.m.daocloud.io,https://docker.1ms.run,https://docker.1panel.live,https://hub.rat.dev,https://dockerproxy.net,https://docker.xuanyuan.me) foreach ($m in $mirrors) { try { $r Invoke-WebRequest -Uri $m/v2/ -Method Head -TimeoutSec 6 -UseBasicParsing -ErrorAction Stop; $m - OK $($r.StatusCode) } catch { $m - FAIL } }本機(jī)實(shí)測(cè)docker.1panel.live?、dockerproxy.net?其余超時(shí)。2. 寫入 daemon.json 并重啟WSL[WSL] sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json /dev/null EOF { registry-mirrors: [ https://docker.1panel.live, https://dockerproxy.net ] } EOF sudo systemctl restart docker heredoc 粘貼不便時(shí)用單行寫法[WSL] sudo bash -c echo {\registry-mirrors\:[\https://docker.1panel.live\,\https://dockerproxy.net\]} /etc/docker/daemon.json sudo systemctl restart docker3. 重新驗(yàn)證[WSL] docker run --rm hello-world # 成功輸出 Hello from Docker!第 7 部分常見命令速查1. 安裝與基礎(chǔ)設(shè)置命令說明wsl --install安裝 WSL 和默認(rèn) Linux 發(fā)行版通常是 Ubuntuwsl --list --online查看可安裝的發(fā)行版列表wsl --install -d 發(fā)行版名稱安裝指定的發(fā)行版如-d Ubuntu-22.04wsl --set-default-version 2設(shè)置新裝發(fā)行版默認(rèn)用 WSL 2wsl --update手動(dòng)更新 WSL 內(nèi)核wsl --version查看 WSL 版本信息2. 發(fā)行版管理命令說明wsl -l -v或wsl --list --verbose列出所有發(fā)行版及狀態(tài)、WSL 版本wsl -t 發(fā)行版或wsl --terminate 發(fā)行版終止指定發(fā)行版wsl --shutdown終止所有發(fā)行版和 WSL2 虛擬機(jī)wsl --set-version 發(fā)行版 2將發(fā)行版轉(zhuǎn)換為 WSL 2wsl --set-default 發(fā)行版設(shè)置默認(rèn)發(fā)行版wsl --unregister 發(fā)行版注銷并刪除發(fā)行版清空其所有數(shù)據(jù)3. 運(yùn)行與交互命令說明wsl或wsl ~啟動(dòng)默認(rèn)發(fā)行版并進(jìn)入 Linux 家目錄wsl -d 發(fā)行版啟動(dòng)指定發(fā)行版wsl -u 用戶名或wsl --user 用戶名以指定用戶身份運(yùn)行wsl --cd 目錄指定啟動(dòng)時(shí)的工作目錄wsl --exec 命令或wsl -e 命令執(zhí)行單個(gè) Linux 命令并退出如wsl --exec ls -la4. 導(dǎo)入/導(dǎo)出與備份命令說明wsl --export 發(fā)行版 文件名.tar導(dǎo)出發(fā)行版為 tar備份wsl --import 新發(fā)行版 安裝目錄 文件名.tar從 tar 導(dǎo)入新發(fā)行版wsl --import-in-place 發(fā)行版 文件名.vhdx從 vhdx 直接導(dǎo)入WSL2 專用5. 文件互訪位置/命令說明\\wsl.localhost\發(fā)行版或\\wsl$\發(fā)行版資源管理器中訪問 Linux 文件explorer.exe .Linux 終端中把當(dāng)前目錄打開到 Windows 資源管理器/mnt/c/Linux 中訪問 Windows C 盤其他盤同理6. 其他命令命令說明wsl --status查看 WSL 全局狀態(tài)默認(rèn)版本、內(nèi)核等wsl --help查看所有可用命令wsl --systemWSL2啟動(dòng)專用系統(tǒng)分發(fā)用于調(diào)試第 8 部分常見問題排查FAQQ1:wsl --list --online報(bào)0x80072ee2微軟服務(wù)器網(wǎng)絡(luò)超時(shí)。不要用wsl --install走排障路線手動(dòng)下載 wsl --import見第 6 部分。Q2: 啟動(dòng)報(bào)HCS_E_SERVICE_NOT_AVAILABLE適用于 Linux 的 Windows 子系統(tǒng)或虛擬機(jī)平臺(tái)沒開啟或開了沒重啟?;氐?1.2 節(jié)確認(rèn)并重啟電腦。仍不行再查 BIOS 虛擬化Intel VT-x / AMD SVM是否開啟。Q3: PowerShell 里 wsl 輸出亂碼舊版 wsl.exe 輸出 UTF-16。用cmd /c ... fileGet-Content file -Encoding Unicode。Q4:[WSL]的命令提示 “command not found”你還在 PowerShell 里沒有進(jìn)入 Ubuntu。先敲wsl回車進(jìn)入再執(zhí)行。Q5:sudo提示不在 sudoerswsl --import導(dǎo)入的系統(tǒng)默認(rèn)用戶是 rootroot 無需 sudo。若創(chuàng)建了普通用戶用sudo usermod -aG sudo 用戶名。Q6: 多行 heredoc 粘貼進(jìn) WSL 報(bào)語法錯(cuò)誤PowerShell 傳給wsl bash -lc的參數(shù)轉(zhuǎn)義有問題。手動(dòng)操作在 WSL 里直接粘貼不會(huì)遇到若確實(shí)要一次跑完寫成.sh文件放 Windows 側(cè)wsl bash /mnt/c/.../xxx.sh執(zhí)行。Q7:docker pull卡住 / 超時(shí)Docker Hub 不通。確認(rèn)/etc/docker/daemon.json里registry-mirrors有效重新測(cè)連通性加速器會(huì)失效systemctl restart docker后重試。Q8: 裝了普通用戶docker命令報(bào) permission denied[WSL] sudo usermod -aG docker 用戶名 newgrp docker # 或重新登錄Q9: 磁盤空間緊張ext4.vhdx自動(dòng)增長(zhǎng)不自動(dòng)收縮。wsl --shutdown后可用 diskpart 或 WSL 工具收縮 vhdx更簡(jiǎn)單的是心里有數(shù)Linux 與 Windows 共享同一物理盤。Q10: 運(yùn)行 GUI 程序又彈遠(yuǎn)程桌面 ActiveX窗見 9.1。Q11: 別人的教程說wsl --install一行就夠?yàn)槭裁次铱ㄋ滥愕木W(wǎng)絡(luò)訪問不了微軟服務(wù)器0x80072ee2。晴天路線假設(shè)網(wǎng)絡(luò)正常你的機(jī)器必須走排障路線的離線下載方案。Q12: 別人的教程說.appx改后綴.tar就能 import多數(shù)情況是錯(cuò)的.appx是 ZIP 容器、.tar是另一打包格式直接改后綴無法被wsl --import正確解析。正確做法是解壓出rootfs.tar.gz或直接用 Ubuntu 官方鏡像站提供的.tar.gz本文用的就是它。第 9 部分附錄9.1 WSLg 彈窗問題“無法加載遠(yuǎn)程桌面服務(wù) ActiveX 控件”現(xiàn)象運(yùn)行 Linux GUI 程序或 WSLg 初始化時(shí)彈窗無法加載遠(yuǎn)程桌面服務(wù) ActiveX 控件。請(qǐng)確保 rdclientax.dll 在路徑中。根因WSL 2.7.11 的 MSRDC 組件1.2.7214依賴系統(tǒng) APIGetTempPath2W該 API 由 Windows 更新 KB5053594 提供。系統(tǒng)更新不完整本機(jī) kernel32 為 10.0.19041.5072缺此 API→ 加載失敗。解決已實(shí)測(cè)選一降級(jí) WSL 到 2.7.10推薦快且安全MSRDC 1.2.6676 不依賴該 API。wsl --version顯示 MSRDC 1.2.6676 即正常。安裝 KB5053594治本但慢從 Microsoft Update Catalog 下載 x64 版約 1.6GB微軟 CDN 限速需多線程下載裝完重啟。驗(yàn)證 GUI 正常[WSL] apt-get install -y -qq x11-apps xclock # 彈出小時(shí)鐘 WSLg 正常9.2 多線程分塊下載GitHub/微軟 CDN 限速時(shí)的提速單線程被限到 ~60KB/s 時(shí)把文件切成 N 段并發(fā)下載再合并實(shí)測(cè) 8 線程可達(dá) 423KB/s約 7 倍。# 思路PowerShell 偽代碼# 1. HEAD 拿 content-length$resp Invoke-WebRequest -Uri $url -Method Head -MaximumRedirection 10# 2. 按線程數(shù)均分 RangeStart-Job 并發(fā) curl --range start-end -o part_i.bin# 3. 全部完成后按序合并所有 part 文件9.3 本機(jī)環(huán)境快照項(xiàng)值Windows10.0.19045.560822H2原始 WSL內(nèi)置 10.0.19041.3636缺內(nèi)核安裝后 WSL2.7.10.0 / 內(nèi)核 6.18.33.2-2 / WSLg 1.0.73.2 / MSRDC 1.2.6676Ubuntu24.04 LTSNoble Numbatamd64安裝位置E:\WSL\Ubuntu\ext4.vhdxDocker29.7.2docker-ce 官方源 buildx compose鏡像加速docker.1panel.live / dockerproxy.net管理員操作WSL MSI 安裝、TermService 啟動(dòng)各一次 UAC 確認(rèn)