Windows 下安装与使用 WSL2 教程
手把手在 Windows 10/11 启用 WSL2、安装 Linux 发行版、与 Windows 文件互通、配置开发环境与常见问题排查。
本文面向需要在 Windows 上高效使用 Linux 环境的开发者。参考资料:见文末链接。
1. WSL2 是什么
- WSL2(Windows Subsystem for Linux 2)是在 Windows 上运行完整 Linux 内核的轻量虚拟化方案,兼容系统调用,启动快、占用小,适合日常开发与教学。
- 与 WSL1 相比,WSL2 拥有更好的 Linux 兼容性与容器/网络能力;跨系统文件访问性能在某些场景下略低,建议将代码放在 Linux 文件系统侧(
\\wsl$或发行版的根目录)。
2. 系统要求与前置检查
- Windows 10 2004+ 或 Windows 11;需要 CPU 虚拟化支持(Intel VT-x/AMD-V)。
- 以管理员身份打开 PowerShell,检查版本:
winver
3. 一键安装(推荐)
Windows 10 21H2+/Windows 11 直接使用官方一键命令:
wsl --install
说明:
- 若未指定发行版,默认安装 Ubuntu LTS;
- 首次安装会自动启用必需的 Windows 特性、下载安装 WSL 内核并重启;
- 安装完成后,首次进入会要求创建 Linux 用户名与密码。
3.1 指定发行版/版本
wsl --list --online # 查看可用发行版
wsl --install -d Ubuntu-22.04 # 指定发行版
wsl --set-default-version 2 # 设置 WSL2 为默认版本
wsl -l -v # 查看已安装发行版与版本
4. 手动启用(旧版本系统可用)
若 wsl --install 不可用,可手动启用以下功能并重启:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
安装 WSL2 内核更新包(若系统提示),然后执行:
wsl --set-default-version 2
5. 初次使用与目录结构
- 启动发行版:开始菜单搜索“Ubuntu”,或在命令行执行
wsl; - Windows ↔ Linux 文件互访:
- 在 WSL 中访问
C:盘:/mnt/c/Users/你的用户名/... - 在 Windows 资源管理器访问 WSL:输入地址
\\wsl$\发行版名\;
- 在 WSL 中访问
- 建议将代码仓库存放在 Linux 文件系统(
~或\\wsl$)以获得最佳 I/O 性能。
6. 包管理与换源(以 Ubuntu 为例)
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential git curl unzip
可按需配置镜像源(校园/企业网络环境常见),注意源的可信与可用性。
7. 与 Windows 工具协同
- 直接在 WSL 中调用 Windows 程序:
/mnt/c/Windows/System32/notepad.exe file.txt - VS Code:安装“Remote - WSL”扩展,在 WSL 环境内打开文件夹进行开发与调试。
- Git:建议在 WSL 内安装 Git 并使用 SSH;避免混用 Windows Git 与 WSL Git 对同一工作区。
8. Docker 与容器(推荐)
- 安装 Docker Desktop 并开启“Use the WSL 2 based engine”;
- 在 WSL 终端直接执行
docker ps验证; - 将项目目录放在 Linux 文件系统下,可显著提升容器内 I/O 性能。
9. GPU/CUDA(可选)
- 需要 NVIDIA 显卡与支持 CUDA on WSL 的 Windows 驱动;
- 在 WSL 中安装相应的 CUDA Toolkit/框架后,可执行:
nvidia-smi
若能显示 GPU 信息,即可在 WSL 中运行深度学习/并行计算任务。更多 CUDA 高效计算建议可参考本站文档《CUDA 高效计算实践指南》。
10. 常见问题排查
-
wsl --install报错或无该命令:更新到较新的 Windows 版本,或按“手动启用”步骤操作。 -
无法访问
\\wsl$:重启 LxssManager 服务或执行:
wsl --shutdown
然后重新打开发行版。
-
磁盘/文件权限问题:在 WSL 内创建与管理 Linux 侧文件;跨系统编辑同一文件可能导致权限/换行符异常。
-
网络访问异常:检查公司代理/防火墙;WSL 的网络与 Windows 共享,可尝试重置网络或
wsl --shutdown后重启。 -
迁移到 WSL2:
wsl --set-version <发行版名> 2
11. 快速命令速查表
wsl -l -v # 查看发行版与版本
wsl --set-default-version 2 # 设置 WSL2 为默认
wsl --install -d Ubuntu-22.04 # 安装指定发行版
wsl --set-version Ubuntu-22.04 2 # 升级到 WSL2
wsl --export <发行版> file.tar # 备份发行版
wsl --import <新名> <路径> file.tar --version 2 # 还原为新发行版
wsl --terminate <发行版> # 终止发行版
wsl --shutdown # 关闭所有发行版
参考与延伸阅读:
- Windows 上使用 WSL2 的安装与基础使用(参考实践文) 链接