【互動式教學】Windows 11 WSL2 完整安裝:5 分鐘閃電上手
互動式檢查清單 + 決策樹導航 + AI Prompt 工具包,根據你的情境快速完成 WSL2 環境建置。
Windows 11 WSL2 完整安裝:5 分鐘閃電上手
這不是一般的教學文章
✅ 互動檢查清單:勾選進度,可匯出到你的筆記工具 ✅ 決策樹導航:根據你的情況,只看需要的內容 ✅ Prompt 工具包:帶走可重複使用的 AI 對話模板 ✅ 踩坑實錄:真實經驗,AI 搜不到的避雷指南
選擇你的學習路徑
選擇你的學習路徑
前置條件確認
30 秒快速檢查
0/3 完成如何檢查虛擬化狀態
- 按
Ctrl + Shift + Esc開啟工作管理員 - 點選「效能」分頁 → 選擇「CPU」
- 查看右下角「虛擬化」欄位
如果顯示「已停用」,需進入 BIOS 啟用:
- Intel CPU:啟用 Intel VT-x
- AMD CPU:啟用 AMD-V
第一部分:WSL2 基礎安裝
WSL2 安裝步驟
0/9 完成wsl --installcat /etc/os-release 確認 Ubuntu 版本sudo apt update && sudo apt upgrade -y 更新系統WSL2 vs WSL1 一句話記住
WSL2 = 完整 Linux 核心,WSL1 = 翻譯層
| 比較 | WSL1 | WSL2 |
|---|---|---|
| 架構 | 翻譯層 | 輕量 VM + 完整核心 |
| Docker | ❌ 不支援 | ✅ 原生支援 |
| GPU | ❌ 不支援 | ✅ CUDA 支援 |
| 檔案效能(Linux 內) | 較慢 | 快 |
症狀:執行 wsl --install 成功,但重開機後沒有 Ubuntu 視窗
原因:某些情況下預設發行版沒有自動安裝
解法:
# 手動安裝 Ubuntu
wsl --install -d Ubuntu
我怎麼發現的:第一次在公司新電腦裝,等了 10 分鐘才發現要手動裝 😅
第二部分:Docker Desktop 整合
Docker 安裝步驟
0/11 完成docker --version 確認docker run hello-world 看到成功訊息為什麼用 Docker
Docker = 「在我電腦上可以跑」的終極解法
| 沒有 Docker | 有 Docker |
|---|---|
| Python 3.8 和 3.11 打架 | 每個專案獨立環境 |
| 「你少裝了 XXX」 | 一個指令全部搞定 |
| 部署要重新設定 | 開發環境 = 生產環境 |
快速體驗:
docker run -p 8888:8888 jupyter/pytorch-notebook
症狀:開著 Docker Desktop,電腦越來越慢,記憶體被吃光
原因:WSL2 VM 預設會動態擴展記憶體,最高可用到系統 80%
解法:建立 .wslconfig 限制記憶體
在 Windows 的 %UserProfile% 目錄建立 .wslconfig:
[wsl2]
memory=8GB
processors=4
swap=2GB
然後重啟 WSL:
wsl --shutdown
血淚教訓:在 16GB 筆電上開 Docker 跑模型訓練,差點當機 💀
第三部分:GPU 與 CUDA 設定
GPU 設定步驟
0/8 完成nvidia-smi 看到 GPU 資訊CUDA 安裝指令(在 WSL2 Ubuntu 中執行):
# 下載並安裝 CUDA keyring
wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-keyring_1.1-1_all.deb
sudo dpkg -i cuda-keyring_1.1-1_all.deb
sudo apt update
sudo apt install -y cuda-toolkit-12-4
# 設定環境變數
echo 'export PATH=/usr/local/cuda/bin:$PATH' >> ~/.bashrc
echo 'export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH' >> ~/.bashrc
source ~/.bashrc
安裝 PyTorch GPU 版:
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
驗證:
python3 -c "import torch; print(f'CUDA: {torch.cuda.is_available()}, GPU: {torch.cuda.get_device_name(0)}')"
WSL2 GPU 原理
WSL2 不需要在 Linux 內裝 NVIDIA 驅動
Windows 驅動會自動橋接到 WSL2:
Windows NVIDIA Driver
↓ (自動橋接)
WSL2 Linux
↓
CUDA Toolkit
↓
PyTorch / TensorFlow
重點:
- ✅ 在 Windows 安裝最新 NVIDIA 驅動
- ❌ 不要在 WSL2 內安裝 nvidia-driver
- ✅ 只需在 WSL2 內安裝 CUDA Toolkit
症狀:nvidia-smi 正常顯示 GPU,但 torch.cuda.is_available() 回傳 False
原因:PyTorch 安裝了 CPU 版本,或 CUDA 版本不匹配
解法:
# 先移除舊的 PyTorch
pip uninstall torch torchvision torchaudio
# 安裝正確的 CUDA 版本
pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu124
確認版本對應:nvidia-smi 右上角的 CUDA Version 要和 PyTorch 的 cu 版本匹配。
第四部分:VS Code Remote WSL 整合
VS Code 整合步驟
0/6 完成code .VS Code Remote 架構
VS Code 跑在 Windows,程式碼跑在 Linux
┌─────────────────┐ ┌─────────────────┐
│ Windows 端 │ │ WSL2 端 │
│ ┌───────────┐ │ │ ┌───────────┐ │
│ │ VS Code │◄─┼─────┼─►│ VS Code │ │
│ │ UI │ │ │ │ Server │ │
│ └───────────┘ │ │ └───────────┘ │
└─────────────────┘ └─────────────────┘
優點:Windows 的 UI 體驗 + Linux 的開發環境
症狀:開啟專案要等 30 秒以上,常常卡住
原因:專案放在 /mnt/c(Windows 磁碟),跨檔案系統效能差
解法:
# 把專案移到 Linux 檔案系統
mkdir -p ~/projects
mv /mnt/c/Users/你的名字/project ~/projects/
# 以後都在 Linux 檔案系統工作
cd ~/projects
code .
效能差異:/mnt/c 效能只有 Linux 原生的 10-20%!
實用技巧與效能優化
效能三條黃金法則
三條黃金法則
- 專案放
~/不放/mnt/c— 效能差 5-10 倍 - 限制 WSL2 記憶體 — 避免吃光系統資源
- 用 VS Code Remote — 不要在 Windows 跑 Linux 檔案
症狀:npm install 花了 15 分鐘,平常只要 30 秒
原因:專案放在 /mnt/c,每個檔案操作都要跨檔案系統
解法:
cd ~
git clone <你的專案>
cd <專案名>
npm install # 現在應該 30 秒內完成
數據對比:
/mnt/cnpm install:15 分鐘~/npm install:30 秒- 差距:30 倍
常見問題排解
Q1: 安裝時出現「虛擬機器平台」錯誤
錯誤訊息:Please enable the Virtual Machine Platform Windows feature
解法:以系統管理員身分執行 PowerShell:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
然後重新開機。
Q2: WSL2 無法連接網路
# 以系統管理員身分執行
netsh winsock reset
netsh int ip reset
然後重新開機。
Q3: Docker 顯示「Cannot connect to the Docker daemon」
- 確認 Docker Desktop 正在執行
- Settings → Resources → WSL Integration 已啟用
- 嘗試重啟 Docker Desktop
Q4: nvidia-smi 顯示「command not found」
wsl --update
wsl --shutdown
然後重新開啟 Ubuntu。
Q5: VS Code Remote WSL 連接緩慢
rm -rf ~/.vscode-server
然後重新連接。
總結與下一步
完成確認
0/6 完成相關文章:
參考資源: