wsl --install 是最省事的启动方式,但前提是 windows 版本需为 win10 2004(build 19041+)或 win11,否则会卡在 0.0% 或报错;若版本达标仍失败,大概率是网络问题或 wsl 功能未启用,需手动执行 dism 命令启用子系统与虚拟机平台、重启后安装内核包并设置默认版本。

直接说结论:wsl --install 是最省事的启动方式,但前提是你的 Windows 版本够新(Win10 2004/19041+ 或 Win11),否则会卡在 0.0% 或报错。
wsl --install 执行失败或卡住怎么办
常见现象是命令执行后进度停在 0.0%、提示 The operation was canceled,或直接输出帮助文本而非开始安装。这通常说明系统不满足一键安装条件。
- 先验证 Windows 版本:按
Win + R输入winver,确认内部版本号 ≥19041(Win10)或为 Win11 - 若版本达标但仍失败,大概率是网络问题——微软商店源在国内不稳定,可改用离线下载方式
- 执行
wsl --list --online能列出发行版但wsl --install无反应,说明 WSL 功能未启用,需手动开启 - 企业环境或组策略禁用了 Windows 功能,
wsl --install会静默失败,必须走dism手动路径
手动启用 WSL2 的关键命令和顺序
顺序错误会导致后续步骤全部失效,比如先装内核再启功能,或没重启就运行 wsl --set-default-version 2。
- 以管理员身份打开 PowerShell,依次运行:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestartdism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart - 必须重启电脑——这是硬性要求,跳过会导致
wsl_update_x64.msi安装失败或wsl --set-default-version不生效 - 重启后,下载并安装内核包:
wsl_update_x64.msi(地址:https://www.php.cn/link/374d383550f673cead5c903caca73d6f) - 再运行
wsl --set-default-version 2,用wsl --list --verbose确认已显示VERSION列为2
安装非 Ubuntu 发行版或指定安装路径
Microsoft Store 安装看似简单,但默认装在 C 盘用户目录下,容易挤占空间;且某些发行版(如 Alpine、Arch)不在商店里,必须离线导入。
- 从 https://www.php.cn/link/82ac5ef22d6c457c4b4b0ba73f0ed930 下载
.appx包(如Debian.appx),重命名为.zip后解压到目标路径(如D:\wsl\debian) - 用
wsl --import导入:wsl --import Debian D:\wsl\debian D:\wsl\debian\install.tar(注意第三个参数是解压出的install.tar路径) - 导入后默认用户是 root,需运行
wsl -d Debian -u root进入,再执行useradd -m -s /bin/bash username和passwd username创建普通用户 - 设为默认发行版:
wsl --setdefault Debian
首次启动后密码输不进去或用户名被拒绝
这不是 bug,是 Linux 用户规范限制。Windows 用户名(如 John-Smith)直接拿来当 Linux 用户名会失败,且密码输入时屏幕不显示字符是正常行为。
- 用户名只能含小写字母、数字、连字符(
-)和下划线(_),不能以连字符开头,长度建议 3–32 字符 - 密码输完直接回车,不要因看不到反馈就重复按键——输错三次会退出,需重新运行发行版启动程序
- 若已卡在登录界面且忘记密码,用 PowerShell 运行
wsl -u root进入,再执行passwd username重置 - 每次重装或重置发行版,都要重新设置用户名和密码,它和 Windows 账户完全隔离
真正麻烦的不是安装步骤本身,而是版本兼容性判断和路径权限控制——比如 wsl --mount 只支持 Windows 11 或 WSL 商店版,旧版 Win10 即使装了 WSL2 也用不了;又比如 /mnt/c 下的文件 chmod 不生效,因为 drvfs 不支持 Unix 权限位。这些细节不踩一遍坑很难意识到。











