wsl --install 一行命令加一次重启即可获得接近原生linux开发环境,但需确保windows版本≥19041、cpu虚拟化已启用、内存≥8gb、磁盘空闲≥50gb,否则会卡在0.0%或报错0x80370102。

直接上结论:用 wsl --install 一行命令 + 一次重启,就能拿到接近原生 Linux 的开发环境,但必须确认虚拟化已开启、系统版本达标,否则后续所有操作都会卡在 0.0% 或报错 0x80370102。
检查硬件和系统是否满足 WSL2 基本要求
很多问题其实出在第一步没验清楚。不是“能装就行”,而是“必须满足才跑得起来”:
- Windows 版本必须是
19041(Win10 2004)或更高,Win11 全支持;运行winver确认内部版本号 - CPU 虚拟化必须启用:任务管理器 → 性能 → CPU → 右下角看“虚拟化”是否显示“已启用”;若为“已禁用”,需进 BIOS 手动打开
Intel VT-x或SVM Mode - 内存建议 ≥ 8GB,磁盘空闲 ≥ 50GB;WSL2 默认使用动态 VHD,但大项目(如编译内核、跑 Docker)会快速吃满空间
安装 WSL2 并指定发行版(别只信默认 Ubuntu)
wsl --install 默认装 Ubuntu,但如果你需要 Rocky Linux、Debian 或 Alpine,就不能依赖一键命令:
- 先查可用发行版:
wsl --list --online,输出里带Ubuntu-22.04、Debian、RockyLinux这类名称 - 跳过默认 Ubuntu,直接装指定发行版:
wsl --install -d RockyLinux(注意大小写,部分发行版名含连字符) - 如果卡在 0.0%,说明微软商店下载失败,改用离线方式:
wsl --install --web-download -d Debian - 装完后务必执行:
wsl --set-default-version 2,再用wsl -l -v确认所有发行版 Version 列都是2
VSCode 连接 WSL 后,文件路径和 PATH 容易出错
Remote - WSL 插件能让 VSCode 直接读写 WSL 文件系统,但两个关键点常被忽略:
- 不要在 Windows 路径(如
C:\Users\name\project)里开项目 —— 这走的是/mnt/c/...,IO 性能差 5–10 倍;应把代码放在 WSL 内(如/home/name/project) - VSCode 终端默认不加载
~/.bashrc,导致gcc、python3找不到;在 VSCode 设置里搜terminal.integrated.profiles.linux,把bash的args改成["-i", "-l"],强制登录式 shell - 如果在 WSL 里装了
node或pipenv,但 VSCode 里提示 command not found,大概率是没重载 shell 配置,关掉所有终端窗口再重新打开 WSL 窗口
容器、GUI 和性能陷阱要提前防住
WSL2 不是“装完就万事大吉”,几个高发问题直接影响开发流:
- Docker Desktop 必须勾选
Use the WSL 2 based engine,且把项目所在发行版加入Resources → WSL Integration白名单,否则docker build会找不到上下文 - 想跑 GUI 应用(如
gnome-terminal或 Python Matplotlib 图窗),得用 Windows 11 Build 22000+ + WSLg;Win10 用户别折腾 X Server,基本不可靠 -
/tmp在 WSL2 里是内存挂载(tmpfs),大文件临时解压或构建容易爆满;可改用/home/name/tmp并加到.gitignore
最常被跳过的一步是:装完所有工具后,没验证 PATH 是否真正生效。比如 which python3 返回 /usr/bin/python3 是对的,但如果返回 /mnt/c/Users/... 下某个路径,说明你正在调用 Windows 的 Python,不是 WSL 里的 —— 这种混用会导致 pip 包找不到、权限错误、编码异常,问题会层层传导,越往后越难定位。











