核心提示:WSL2 让 Windows 用户无需虚拟机或双系统即可运行完整的 Linux 环境。本文涵盖从安装到高级配置的全部流程,帮助你快速搭建高效的开发环境。
什么是 WSL2
WSL(Windows Subsystem for Linux)是微软为 Windows 10/11 开发的兼容层,允许用户在 Windows 上直接运行 Linux 二进制文件。WSL2 是其第二代版本,采用真正的 Linux 内核,性能大幅提升。
WSL1 vs WSL2 核心区别
| 特性 | WSL1 | WSL2 |
|---|---|---|
| 架构 | 兼容层翻译 | 完整 Linux 内核 |
| 文件系统性能 | 较慢 | 快 2-20 倍 |
| Docker 支持 | 有限 | 完整支持 |
| 系统调用兼容性 | 部分 | 100% |
| 启动速度 | 快 | 略慢但可接受 |
推荐使用 WSL2,除非你有特殊的兼容性需求。
系统要求
在开始安装之前,请确认你的系统满足以下要求:
- 操作系统:Windows 10 版本 2004 或更高(Build 19041+)或 Windows 11
- 架构:x64 或 ARM64
- 虚拟化:BIOS/UEFI 中已启用虚拟化功能
- 内存:建议至少 8GB(运行 Linux 发行版需要)
检查 Windows 版本
打开 PowerShell,运行以下命令:
systeminfo | findstr /I "version"
或者使用更简单的方法:
winver
如果版本低于 2004,建议先更新 Windows。
快速安装(推荐)
一键安装命令
微软提供了简化的安装命令,自动完成所有必要步骤:
- 以管理员身份打开 PowerShell
- 右键点击开始菜单
- 选择 “Windows PowerShell(管理员)” 或 “终端(管理员)”
- 运行安装命令
wsl --install
- 重启计算机
安装完成后需要重启才能生效。
这个命令做了什么?
wsl --install 会自动完成以下操作:
- 启用 “Windows 子系统 for Linux” 可选功能
- 启用 “虚拟机平台” 可选功能
- 下载并安装 Ubuntu(默认发行版)
- 设置 WSL2 为默认版本
自定义安装
选择其他 Linux 发行版
如果你不想使用默认的 Ubuntu,可以先查看可用的发行版列表:
wsl --list --online
常见输出示例:
NAME FRIENDLY NAME Ubuntu Ubuntu Ubuntu-22.04 Ubuntu 22.04 LTS Ubuntu-24.04 Ubuntu 24.04 LTS Debian Debian GNU/Linux Kali-Linux Kali Linux Rolling openSUSE-15 openSUSE Leap 15 SLES-15 SUSE Linux Enterprise Server 15
安装指定发行版:
wsl --install -d Ubuntu-24.04
或者使用完整语法:
wsl --install --distribution Ubuntu-24.04
安装多个发行版
你可以安装多个 Linux 发行版,随时切换使用:
wsl --install -d Ubuntu-22.04 wsl --install -d Debian wsl --install -d Kali-Linux
指定安装位置
默认情况下,WSL 发行版安装在系统盘。如果你想安装到其他位置:
wsl --install --distribution Ubuntu-24.04 --location D:\WSL\Ubuntu
首次启动配置
创建 Linux 用户账户
第一次启动新安装的发行版时,会打开一个终端窗口,要求你设置用户名和密码:
Installing, this may take a few minutes... Please create a default UNIX user account. The username does not need to match your Windows username. For more information visit: https://aka.ms/wslusers Enter new UNIX username: yourname Enter new UNIX password: Retype new UNIX password:
重要提示:
- 用户名可以是任意名称,不必与 Windows 用户名相同
- 密码输入时不会显示(Linux 安全特性)
- 请牢记密码,后续使用
sudo命令时需要
更新系统包
首次登录后,建议立即更新系统包:
# Ubuntu/Debian sudo apt update && sudo apt upgrade -y # openSUSE sudo zypper refresh && sudo zypper update -y # Kali sudo apt update && sudo apt full-upgrade -y
基本命令参考
查看已安装的发行版
wsl --list --verbose
或简写:
wsl -l -v
示例输出:
NAME STATE VERSION * Ubuntu Running 2 Debian Stopped 2
星号(*)表示当前默认的发行版。
启动特定发行版
wsl --distribution Ubuntu-24.04
或简写:
wsl -d Ubuntu-24.04
设置默认发行版
wsl --set-default Ubuntu-24.04
或简写:
wsl -s Ubuntu-24.04
设置后,直接运行 wsl 命令将启动指定的发行版。
切换 WSL 版本
查看当前版本:
wsl -l -v
升级到 WSL2:
wsl --set-version Ubuntu-24.04 2
降级到 WSL1:
wsl --set-version Ubuntu-24.04 1
设置默认版本(影响新安装的发行版):
wsl --set-default-version 2
停止发行版
wsl --terminate Ubuntu-24.04
或简写:
wsl -t Ubuntu-24.04
卸载发行版
wsl --unregister Ubuntu-24.04
警告:这会删除发行版及其所有数据,请提前备份重要文件。
文件系统访问
从 Windows 访问 Linux 文件
在文件管理器地址栏输入:
\\wsl$\Ubuntu-24.04\home\yourname
或者在 PowerShell 中:
explorer.exe \\wsl$\Ubuntu-24.04\home\yourname
从 Linux 访问 Windows 文件
Windows 驱动器自动挂载在 /mnt 目录下:
cd /mnt/c/Users/YourName ls /mnt/d/Projects
最佳实践
推荐:在 Linux 文件系统中工作(~/projects)以获得最佳性能。
避免:在 WSL 中直接操作 /mnt/c/ 下的文件,性能会显著下降。
开发环境配置
安装常用开发工具
# Git sudo apt install git -y # Node.js curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash - sudo apt install -y nodejs # Python sudo apt install python3 python3-pip -y # Docker curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh sudo usermod -aG docker $USER
VS Code 集成
- 在 Windows 上安装 VS Code
- 安装 “Remote – WSL” 扩展
- 在 WSL 终端中运行:
code .
VS Code 会自动连接到 WSL 环境,提供完整的开发体验。
Windows Terminal 配置
推荐使用 Windows Terminal 管理 WSL 会话:
- 从 Microsoft Store 安装 Windows Terminal
- 打开设置(
Ctrl + ,) - 添加新的 WSL 配置文件
示例配置(添加到 settings.json):
{
"profiles": {
"list": [
{
"guid": "{ubuntu-profile-guid}",
"name": "Ubuntu 24.04",
"commandline": "wsl -d Ubuntu-24.04",
"icon": "ms-appx:///ProfileIcons/{9acb9455-ca41-5af7-950f-6bca1bc9722f}.png"
}
]
}
}
常见问题解答
Q: wsl –install 命令不工作怎么办?
A: 按顺序检查:
- 确认 Windows 版本 >= 2004(运行
winver) - 以管理员身份运行 PowerShell
- 检查虚拟化是否在 BIOS 中启用
- 手动启用功能:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- 重启后运行
wsl --update
Q: 如何确认我使用的是 WSL2?
A: 运行 wsl -l -v,查看 VERSION 列是否为 2。
Q: WSL2 占用太多磁盘空间怎么办?
A: 可以压缩虚拟磁盘文件:
- 停止 WSL:
wsl --shutdown - 找到 VHDX 文件(通常在
%LOCALAPPDATA%\Packages\<发行版>\LocalState\ext4.vhdx) - 使用 DiskPart 压缩:
diskpart select vdisk file="C:\path\to\ext4.vhdx" attach vdisk readonly compact vdisk detach vdisk exit
Q: Docker Desktop 和 WSL2 如何配合使用?
A:
- 安装 Docker Desktop for Windows
- 打开 Docker Desktop 设置
- 进入 “Resources” → “WSL integration”
- 启用你的 Linux 发行版
- 在 WSL 中运行
docker ps验证
Q: 如何在 WSL2 中运行 GUI 应用?
A: Windows 11 和 Windows 10(22000+)支持 WSLg,可以直接运行 Linux GUI 应用:
sudo apt install gedit -y gedit # 直接在 Windows 桌面打开
性能优化技巧
1. 使用 WSL2 而不是 WSL1
WSL2 的文件系统性能比 WSL1 快 2-20 倍,尤其是涉及大量小文件操作时。
2. 在 Linux 文件系统中工作
避免在 /mnt/c/ 下工作,使用 Linux 原生路径(如 ~/projects)。
3. 排除杀毒软件扫描
将 WSL VHDX 文件添加到 Windows Defender 排除列表:
- 打开 Windows 安全中心
- 病毒和威胁防护 → 管理设置
- 排除项 → 添加排除项 → 文件夹
- 添加
%LOCALAPPDATA%\Packages中包含发行版的文件夹
4. 增加 WSL 内存限制
创建或编辑 %USERPROFILE%\.wslconfig:
[wsl2] memory=8GB processors=4 swap=4GB
总结
WSL2 是 Windows 上运行 Linux 开发环境的最佳选择。通过本指南,你应该能够:
- ✅ 一键安装 WSL2 和 Linux 发行版
- ✅ 配置多个发行版并灵活切换
- ✅ 掌握常用的 WSL 管理命令
- ✅ 理解文件系统的最佳实践
- ✅ 搭建完整的开发环境
- ✅ 解决常见问题和性能优化
下一步建议:
- 安装你需要的开发工具(Git、Node.js、Python 等)
- 配置 VS Code Remote – WSL 扩展
- 探索 Linux 生态系统的丰富工具
参考资料:
本文基于 WSL 最新版本编写,部分功能可能随 Windows 更新有所变化。建议查阅官方文档获取最新信息。
