第一步:检查当前状态
在开始折腾 BIOS 之前,我们先确认一下系统到底有没有识别到虚拟化。
- 按下快捷键
Ctrl + Shift + Esc打开任务管理器。 - 点击左侧的“性能”图标,选择 “CPU”。
- 看右下角的信息,找到 “虚拟化”:
- 如果是“已启用”:说明 BIOS 已经开了,请直接跳到 第三步。
- 如果是“已禁用”:请继续 第二步。
第二步:在 BIOS 中开启虚拟化(戴尔品牌机为例)
这是最关键的一步。戴尔电脑进入 BIOS 的方法比较统一,请仔细操作。
- 重启电脑。
- 在屏幕变黑后重新亮起,出现 DELL 标志的瞬间,连续快速敲击
F2键,直到进入 BIOS 设置界面。- 注意:如果 F2 没反应,可以尝试关机后按住
Shift键再开机,或者在 Windows 设置 -> 系统 -> 恢复 -> 高级启动 -> 立即重新启动 -> 疑难解答 -> 高级选项 -> UEFI 固件设置中进入。
- 注意:如果 F2 没反应,可以尝试关机后按住
- 进入 BIOS 后,界面可能因机型不同而异,请寻找以下路径(通常在左侧菜单树中):
- 路径 A(常见): 展开
Virtualization Support(虚拟化支持) -> 点击Virtualization(虚拟化)。 - 路径 B: 展开
System Configuration(系统配置) ->BIOS Core Configuration->Virtualization。 - 路径 C: 展开
Processor Settings(处理器设置)。
- 路径 A(常见): 展开
- 在右侧找到
Enable Intel Virtualization Technology(开启英特尔虚拟化技术)或类似的选项。 - 勾选该选项前的复选框,或者将其状态从
Disabled改为Enabled。 - 建议一并开启: 如果有
VT for Direct I/O(VT-d) 选项,也建议勾选/开启,这有助于 WSL2 的性能。 - 点击底部的 “Apply Changes”(应用更改)或按
F10保存并退出。 - 电脑会自动重启。
第三步:在 Windows 11 中启用组件
BIOS 开启后,还需要告诉 Windows 11 去调用它。
- 按下
Win + R键,输入optionalfeatures并回车。 - 在弹出的“Windows 功能”窗口中,找到并勾选以下两项(如果没有这两项,说明你的系统版本可能受限,见下文提示):
- 适用于 Linux 的 Windows 子系统 (Windows Subsystem for Linux)
- 虚拟机平台 (Virtual Machine Platform)
- 注意:如果你使用的是专业版,也可以勾选 Hyper-V,但对于 WSL2 来说,前两项是必须的。
- 点击确定,系统会自动搜索并安装文件。
- 必须重启电脑才能生效。
第四步:排查冲突(如果依然闪退)
如果以上都做了,WSL 还是闪退,很可能是“基于虚拟化的安全性 (VBS)”在捣乱,它有时会独占虚拟化资源,导致 WSL 无法启动。
- 打开 Windows 设置 -> 隐私和安全性 -> Windows 安全中心。
- 点击 “设备安全性”。
- 找到 “内核隔离” (Core Isolation),点击“内核隔离详细信息”。
- 将 “内存完整性” 的开关设置为 关闭 (Off)。
- 重启电脑后再试。
总结检查表
| 步骤 | 操作 | 预期结果 |
|---|---|---|
| 1 | 任务管理器查看 CPU | 显示“虚拟化:已启用” |
| 2 | 戴尔 BIOS (F2) 设置 | Virtualization 设为 Enabled |
| 3 | Windows 功能 | 勾选“虚拟机平台”和“WSL” |
| 4 | 最终测试 | 在 PowerShell 输入 wsl 能正常进入 Linux 终端 |
问题 1:上述四个步骤都没有问题,但是 WSL 启动依旧会闪退,没有任何报错代码
1. 尝试以 Root 身份启动(最快诊断法)
很多时候闪退是因为默认用户的配置文件(.bashrc 等)损坏,或者权限错乱。
- 操作: 打开 PowerShell,输入以下命令并回车:
-
wsl -u root
结果分析:
- 如果能成功进入(显示
root@你的电脑名:/#): 说明系统核心没问题,只是你原来的用户配置坏了。你可以在里面执行adduser <新用户名>创建一个新用户,以后用新用户登录即可。 - 如果依然闪退: 说明是系统级环境问题,请继续下一步。
2. 彻底重置 WSL 服务
有时候后台残留的僵尸进程会卡住启动。
-
操作: 在 PowerShell(管理员) 中依次执行:
wsl --shutdown wsl --unregister Ubuntu- 注意:
wsl --unregister Ubuntu会删除该发行版内的所有数据(文件、代码等)。如果你里面有重要数据,请先尝试在文件资源管理器地址栏输入\\wsl$看看能不能把文件拷出来。
- 注意:
-
重装: 卸载后,去微软应用商店(Microsoft Store)重新搜索 Ubuntu 并安装,或者在 PowerShell 输入
wsl --install -d Ubuntu。
3. 修改 wsl.conf 禁用自动挂载(解决挂载冲突)
WSL 启动时会自动挂载 Windows 磁盘,如果 Windows 的磁盘服务(如 BitLocker 或某些磁盘错误)有卡顿,会导致 WSL 启动超时从而闪退。
-
操作:
-
在文件资源管理器地址栏输入
%localappdata%\Packages并回车。 -
找到类似
CanonicalGroupLimited.Ubuntu...的文件夹(这是 Ubuntu 的安装目录)。 -
进入
LocalState文件夹。 -
新建一个文本文件,命名为
wsl.conf(注意不是.txt)。 -
用记事本打开它,写入以下内容:
[automount] enabled = false [network] generateHosts = false generateResolvConf = false -
保存并关闭,然后再次尝试启动 WSL。
-
4. 解决显卡驱动冲突(WSLg 问题)
Win11 的 WSL2 支持图形界面(WSLg),如果你的显卡驱动(尤其是 NVIDIA 驱动)与 WSL 的图形组件不兼容,会导致启动瞬间崩溃。
- 操作:
- 打开 设备管理器 (
Win + X-> 设备管理器)。 - 找到 显示适配器,右键点击你的独立显卡(如 NVIDIA GeForce ...)。
- 选择 “禁用设备”(不要卸载,禁用即可)。
- 再次尝试启动 WSL。
- 打开 设备管理器 (
- 后续: 如果禁用后能启动,说明是显卡驱动问题。建议去 NVIDIA 官网下载最新的 Studio Driver(工作室版驱动)而不是 Game Ready 驱动,通常对 WSL 兼容性更好。
5. 检查第三方杀毒软件
如果你安装了 360、火绒、迈克菲 (McAfee) 等第三方杀毒软件,它们可能会拦截 WSL 的内核调用。
- 操作: 暂时退出所有第三方杀毒软件,或者关闭它们的“系统防护/行为监控”功能,然后再试。
6. 最后的绝招:手动安装旧版内核
如果以上都不行,可能是最新的 WSL 内核更新包与你的系统版本冲突。
- 操作:
- 去微软官网或 GitHub 下载 WSL2 Linux kernel update package for x64 machines(通常是
.msi文件)。 - 手动运行安装。
- 或者,在 PowerShell 中运行
wsl --update看看是否有更新提示。
- 去微软官网或 GitHub 下载 WSL2 Linux kernel update package for x64 machines(通常是
问题 2:适用于 Linux 的 Windows 子系统没有已安装的分发的情况
wsl -u root 报错“没有已安装的分发”,说明你之前的 WSL 发行版(比如 Ubuntu)已经被彻底卸载、损坏或者注册表信息丢失了。
简单来说:你的电脑里现在只有“WSL 这个软件”,但没有“Linux 系统”本身。就像一个游戏机里没放游戏光盘,所以怎么按启动键都没反应。
别担心,我们重新装一个只需要几分钟。请按照以下步骤操作:
🚀 方法一:一键自动安装(推荐)
这是最简单的方法,Windows 会自动帮你下载并配置好 Ubuntu。
-
打开 PowerShell(管理员): 按下
Win + X键,选择 “Windows PowerShell (管理员)” 或 “终端 (管理员)”。 -
输入安装命令:
wsl --install -
等待下载: 系统会自动下载默认的 Ubuntu 版本。这可能需要几分钟,取决于网速。 注意:如果提示“请求的服务不存在”或类似错误,说明 WSL 服务没启动,请看文末的“特殊情况”。
-
重启电脑: 安装完成后,必须重启电脑才能生效。
-
初始化设置:
- 重启后,WSL 窗口会自动弹出。
- 它会提示你创建 UNIX 用户名(输入你想要的用户名,回车)。
- 然后输入密码(注意:输入密码时屏幕上不会显示任何字符,输完回车即可)。
🛒 方法二:通过微软应用商店安装(如果方法一失败)
如果命令行安装卡住或报错,可以用图形界面安装。
- 按下
Win + S,搜索并打开 Microsoft Store(微软应用商店)。 - 在商店搜索栏输入 Ubuntu。
- 选择 Ubuntu 22.04 LTS 或 Ubuntu 24.04 LTS。
- 点击 “获取” 或 “安装” 按钮。
- 下载完成后,点击 “启动”,或者在开始菜单里找到 Ubuntu 图标点击运行。
- 同样会进入黑底白字的初始化界面,按照提示设置用户名和密码即可。
🛠️ 安装后的验证
安装并设置好之后,你可以再次打开 PowerShell 输入以下命令,确认一切正常:
wsl -l -v
- 正常结果: 会显示
* Ubuntu Running 2。 STATE是Stopped:说明安装成功,只是没在运行,输入wsl即可启动。
⚠️ 特殊情况:如果输入 wsl --install 报错
如果你输入命令后提示 “请求的服务不存在” 或 “错误代码: Wsl/Service...”:
-
再次检查 BIOS 虚拟化 是否开启(参考第二步)。
-
再次检查 Windows 功能 中是否勾选了:
- 适用于 Linux 的 Windows 子系统
- 虚拟机平台
- (勾选后记得重启电脑)
-
如果还是不行,可能是 WSL 服务被禁用。在 PowerShell (管理员) 中运行:
wsl --shutdown # 尝试手动启动服务 net start LxssManager如果提示“服务无法启动”,通常重启电脑能解决大部分临时服务故障。
2万+

被折叠的 条评论
为什么被折叠?



