本文记录了在 Windows 系统上禁用 WSL(Windows Subsystem for Linux)和 Hyper-V 的完整操作过程,包括步骤、注意事项以及常见问题的解决方案。
背景介绍
在 Windows 10/11 系统中,WSL(Windows Subsystem for Linux)和 Hyper-V 是两个常用的虚拟化功能:
- WSL:让 Windows 可以运行 Linux 子系统,无需虚拟机即可使用 Linux 环境
- Hyper-V:微软的虚拟机平台,可以创建和管理虚拟机
但有时候用户可能需要禁用这些功能,例如:
- 释放系统资源
- 使用其他虚拟化软件(如 VirtualBox)与 Hyper-V 共存
- 解决特定的系统兼容性问题
操作环境
- 操作系统:Windows 10/11
- 当前时间:2026年3月21日
- 操作方式:PowerShell 命令行
禁用 WSL 和 Hyper-V 的完整步骤
步骤一:以管理员权限运行 PowerShell
禁用 Windows 功能需要管理员权限。有两种方式:
方式一:使用开始菜单
- 在开始菜单搜索 "PowerShell"
- 右键点击 "Windows PowerShell"
- 选择 "以管理员身份运行"
方式二:使用命令提示符
Start-Process powershell -Verb RunAs步骤二:检查当前功能状态
在禁用之前,可以先查看当前哪些功能处于启用状态:
Get-WindowsOptionalFeature -Online | Where-Object {
$_.FeatureName -match "Hyper|WSL|Subsystem"
}常见的相关功能名称:
Microsoft-Windows-Subsystem-Linux- WSLMicrosoft-Hyper-V-All- Hyper-V 完整功能Microsoft-Hyper-V- Hyper-V 核心VirtualMachinePlatform- 虚拟机平台
步骤三:禁用 WSL
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux -NoRestart步骤四:禁用 Hyper-V
Hyper-V 包含多个子功能,需要逐一禁用:
# 禁用 Hyper-V 完整功能
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All -NoRestart
# 禁用 Hyper-V 核心
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -NoRestart
# 禁用 Hyper-V 管理工具
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Tools-All -NoRestart
# 禁用 Hyper-V PowerShell 模块
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Management-PowerShell -NoRestart
# 禁用 Hyper-V 虚拟机监视器
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Hypervisor -NoRestart
# 禁用 Hyper-V 服务
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Services -NoRestart
# 禁用 Hyper-V 管理客户端
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-Management-Clients -NoRestart步骤五:重要说明 - VirtualMachinePlatform
⚠️ 特别注意:不要轻易禁用
VirtualMachinePlatform!
VirtualMachinePlatform 是 Windows 的虚拟机平台核心组件,许多其他功能依赖它:
- WSL 2 需要它
- 某些 Docker 功能需要它
- 一些 Android 模拟器需要它
如果误禁用了怎么办?
立即重新启用:
Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -NoRestart步骤六:重启电脑
所有 Windows 功能修改都需要重启才能生效:
Restart-Computer或者手动点击 "开始菜单 → 电源 → 重启"
一键禁用脚本
为了简化操作,可以创建一个一键运行的管理员脚本:
# 禁用 WSL
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux -NoRestart
# 禁用 Hyper-V 全套
Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All -NoRestart
Write-Host "操作完成,请手动重启电脑"
pause注意事项
1. 管理员权限是必须的
所有修改 Windows 功能的操作都需要管理员权限,否则会报错:
请求的操作需要提升2. 禁用后的影响
- WSL 禁用后:无法再运行 Linux 子系统,WSL 中的文件和应用将不可用
- Hyper-V 禁用后:无法再使用 Hyper-V 创建的虚拟机
3. 对其他软件的影响
- Docker Desktop:如果使用 Docker Desktop 且依赖 Hyper-V,禁用后 Docker 将无法使用
- VirtualBox:在某些情况下,禁用 Hyper-V 可以解决与 VirtualBox 的兼容性问题
- Android 模拟器:部分模拟器依赖虚拟化技术,可能受影响
4. 数据备份
- 如果有重要的 WSL 实例或 Hyper-V 虚拟机,建议先备份重要数据
- WSL 的文件位于
\\wsl$\网络路径下 - Hyper-V 虚拟机的虚拟硬盘文件(.vhdx)需要手动备份
5. NoRestart 参数
在命令中使用 -NoRestart 参数可以避免立即重启,方便批量操作后再统一重启。但最终必须重启才能使改动生效。
验证禁用是否成功
重启后,可以通过以下命令验证:
# 查看 WSL 状态
Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
# 查看 Hyper-V 状态
Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
# 查看所有相关功能
Get-WindowsOptionalFeature -Online | Where-Object {
$_.FeatureName -match "Hyper|WSL|Subsystem"
}如果显示 State : Disabled,则说明已成功禁用。
如何重新启用
如果日后需要重新启用这些功能,只需将 Disable 改为 Enable:
# 重新启用 WSL
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux -NoRestart
# 重新启用 Hyper-V
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All -NoRestart
# 重启电脑
Restart-Computer常见问题
Q1: 禁用 Hyper-V 后 Docker 还能用吗?
A: 不能。Docker Desktop 在 Windows 上依赖 Hyper-V(或 WSL 2)。禁用后需要使用 Docker Toolbox 或其他不依赖 Hyper-V 的方案。
Q2: 禁用 WSL 后之前的 Linux 文件会丢失吗?
A: 不会。WSL 的文件系统存储在 Windows 的文件系统中,通常位于 %LOCALAPPDATA%\Packages 目录。禁用只是暂时不可用,重新启用后文件会恢复。
Q3: VirtualMachinePlatform 能否禁用?
A: 理论上可以,但会影响 WSL 2、某些 Docker 功能和部分模拟器。除非有特殊需求,否则建议保持启用状态。
Q4: 禁用后开机变快了吗?
A: 这取决于系统配置。对于大多数用户,禁用这些功能可以减少开机时的后台服务,理论上会有所提升。
Q5: 命令执行报错 "找不到功能" 怎么办?
A: 说明该功能本来就没有安装,可以忽略这个错误,继续执行其他命令。
总结
| 功能 | 禁用命令 | 重新启用命令 |
|---|---|---|
| WSL | Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux | Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux |
| Hyper-V | Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All | Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All |
| VirtualMachinePlatform | 不建议禁用 | Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform |
⚠️ 重要提醒:修改 Windows 功能后务必重启电脑,否则更改不会生效。
版权属于:soarli
本文链接:https://blog.soarli.top/archives/935.html
转载时须注明出处及本声明。