可通过wsl --status查看默认版本及内核版本,wsl -l -v检查各发行版实际运行版本,uname -r确认内核标识,Get-WindowsOptionalFeature验证Windows功能启用状态,并通过wsl --shutdown与wsl -d测试虚拟机启动情况。

如果您已安装 Windows Subsystem for Linux,但不确定当前运行的是 WSL1 还是 WSL2,或需确认系统是否已正确启用 WSL2 内核支持,则可通过命令行快速验证其版本、状态及发行版配置。以下是确认 WSL2 运行状态的具体方法:
一、检查 WSL 整体状态与默认版本
该操作用于确认 Windows 系统级 WSL 配置,包括当前默认版本号及内核状态,是判断是否已成功启用 WSL2 的首要依据。
1、以管理员身份打开 PowerShell 或 Windows 终端(Windows Terminal)。
2、执行命令:wsl --status。
3、观察输出中 Default Version 行:若显示 2,表示 WSL2 已设为默认;若为 1,则仍为 WSL1。
4、同时检查 Kernel version 字段:WSL2 必须显示类似 5.x.x 的内核版本号;若显示 N/A 或为空,说明 WSL2 内核未就绪。
二、列出所有已安装发行版及其实际运行版本
该步骤可精确识别每个已安装 Linux 发行版当前使用的架构版本(WSL1 或 WSL2),避免因默认版本设置与单个发行版版本不一致导致误判。
1、在 PowerShell 或终端中执行:wsl --list --verbose 或简写为 wsl -l -v。
2、查看输出表格中的 VERSION 列:每行对应一个发行版,数值为 2 表示该发行版正以 WSL2 模式运行;若为 1,则为 WSL1。
3、注意 STATE 列:若显示 Running,说明该发行版当前处于活动状态;若为 Stopped,需先启动再验证。
三、进入 Ubuntu(或其他发行版)内部验证内核与发行版信息
该方法从 Linux 子系统内部确认其真实运行环境,排除 Windows 层面命令可能存在的缓存或延迟偏差,确保 WSL2 内核已被实际加载。
1、启动任一已安装的发行版(例如 Ubuntu),输入用户名与密码登录。
2、执行命令:uname -r。
3、若返回结果以 Microsoft 开头(如 5.15.133.1-microsoft-standard-WSL2),即明确标识运行于 WSL2 内核;若为 4.19.x 且无 WSL2 后缀,则极可能为 WSL1。
4、补充验证发行版版本:执行 lsb_release -a,确认是否成功加载 Ubuntu 或其他指定发行版。
四、检查 WSL2 所需 Windows 功能是否已启用
该检查聚焦系统底层依赖项,用于定位因功能未启用导致 WSL2 无法运行的根本原因,尤其适用于执行 wsl --list --verbose 时出现错误或无输出的情况。
1、以管理员身份打开 PowerShell。
2、执行命令:Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux。
3、确认返回结果中 State 为 Enabled;否则需手动启用。
4、执行命令:Get-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform。
5、同样确认 State 为 Enabled;若为 Disabled,则 WSL2 核心虚拟化平台缺失,必须启用并重启。
五、验证 WSL2 虚拟机是否正常启动并分配资源
该方法通过直接查询 WSL2 底层虚拟机状态,确认 Hyper-V 兼容层是否激活,适用于怀疑 BIOS 虚拟化未开启或 WSL2 进程异常挂起的场景。
1、在 PowerShell 中执行:wsl --shutdown,强制终止所有正在运行的 WSL 实例。
2、等待约 10 秒后,执行:wsl -d Ubuntu(将 Ubuntu 替换为您的实际发行版名称)。
3、若终端立即进入 Linux 命令行且响应迅速,说明 WSL2 虚拟机可正常唤醒;若卡顿超 30 秒、报错 Failed to launch WSL2 或提示 Please enable the Virtual Machine Platform Windows feature,则需回溯 BIOS 设置或 Windows 功能启用步骤。










