网上找的都不知道几百年前的东西了,现在的Windows11 只有“应用”-“安装的应用“,根本没有什么”应用和组件“。 问了Google最新推出的Gemini 2.5 Pro,还真给解决了。
请尝试以下步骤来彻底卸载 WSL 及其相关组件:
第一步:卸载已安装的 Linux 发行版
虽然您在“安装的应用”中没有看到与“Linux”直接相关的卸载项,但您可能安装了具体的 Linux 发行版(如 Ubuntu, Debian, Kali 等)。这些发行版通常会显示在应用列表中。
- 打开“设置” > “应用” > “安装的应用”。
- 在搜索框中输入您可能安装过的 Linux 发行版的名称(例如 “Ubuntu”, “Debian” 等)。
- 如果找到任何 Linux 发行版应用,点击它旁边的三个点(…),然后选择“卸载”。对所有已安装的发行版重复此操作。
或者,您也可以使用命令行来查看和注销发行版:
- 以 管理员身份 打开 PowerShell 或命令提示符(在开始菜单搜索 PowerShell 或 CMD,右键点击选择“以管理员身份运行”)。
- 输入命令
wsl --list --verbose
(或者wsl -l -v
) 并按 Enter。这将列出所有已安装的 Linux 发行版及其状态。 - 对于列表中的每个发行版,运行命令
wsl --unregister <DistributionName>
来注销它。请将<DistributionName>
替换为实际的发行版名称(例如wsl --unregister Ubuntu
)。注意: 这会删除该发行版的文件系统和所有数据,请确保您已备份重要文件。 - 注销发行版后,您仍然可以回到“安装的应用”列表,搜索并卸载该发行版的应用程序包本身。
第二步:禁用 WSL 相关 Windows 功能
这是卸载 WSL 核心组件的关键步骤,很可能就是您在“系统组件”中看到但无法卸载的原因所在。我们需要通过“Windows 功能”来禁用它。
- 在 Windows 搜索栏中输入“启用或关闭 Windows 功能”,然后打开它。
- 在弹出的“Windows 功能”对话框中,向下滚动找到以下项目:
- 适用于 Linux 的 Windows 子系统 (Windows Subsystem for Linux):取消勾选此项。
- 虚拟机平台 (Virtual Machine Platform):WSL 2 依赖此功能。如果您确定不再需要任何依赖此平台的虚拟化应用(包括 WSL 2),也请取消勾选此项。如果您不确定,可以暂时保留勾选状态,仅取消勾选 WSL 本身。
- Windows 虚拟机监控程序平台 (Windows Hypervisor Platform):某些情况下也可能与 WSL 相关,如果勾选了并且您不需要 Hyper-V 等功能,也可以考虑取消勾选。
- 点击“确定”。Windows 会应用更改,这可能需要一些时间。
- 更改完成后,系统通常会提示您重新启动计算机。请务必重启以完成卸载过程。
第三步:检查是否还有残留(可选)
重启后,WSL 应该已经被彻底禁用了。您可以再次以管理员身份打开 PowerShell 或 CMD,尝试运行 wsl
命令。如果卸载成功,系统应该会提示您 WSL 未安装或需要通过 Microsoft Store 安装。
如果以上没有解决(我就是),继续下面的步骤:
即使您已经在“启用或关闭 Windows 功能”中取消勾选了“适用于 Linux 的 Windows 子系统”并重启,但仍然在“系统组件”和文件资源管理器中看到残留,这确实是比较奇怪的情况,但并非不可能。
这通常意味着:
- WSL 应用包仍然存在:较新版本的 WSL (特别是从 Microsoft Store 安装或更新的版本) 本身是一个应用程序包,与旧版的纯 Windows 功能有所不同。禁用 Windows 功能可能没有自动移除这个应用包本身。这就是为什么它可能仍然出现在“系统组件”列表中。
- 文件资源管理器集成残留:文件资源管理器中的 Linux 图标是一个 Shell 集成,可能没有随着功能禁用或应用卸载而正确移除。这有时需要手动清理注册表项或等待系统更新/刷新。
请尝试以下进阶步骤来处理这些残留项:
第一步:尝试通过 PowerShell 卸载 WSL 应用包
既然在“系统组件”里还能看到,我们尝试用 PowerShell 命令来查找并卸载这个特定的应用包:
- 以 管理员身份 打开 Windows PowerShell(在开始菜单搜索 PowerShell,右键点击选择“以管理员身份运行”)。
- 运行以下命令来查找 WSL 相关的应用包:
Get-AppxPackage *WindowsSubsystemForLinux*
- 如果这个命令找到了一个或多个包(会列出类似
Microsoft.WindowsSubsystemForLinux
的名称),则运行以下命令来尝试卸载它(请确保 PowerShell 是以管理员身份运行的):Get-AppxPackage *WindowsSubsystemForLinux* | Remove-AppxPackage
如果上一个命令找到了多个包,您可能需要指定具体的
PackageFullName
来卸载,或者上述管道命令会尝试卸载所有匹配的包。 - 执行完毕后,再次重新启动您的计算机。
- 重启后,再次检查“系统”-“系统组件”列表,看看“适用于 Linux 的 Windows 子系统”是否消失了。
第二步:处理文件资源管理器中的 Linux 图标残留
如果第一步执行后(或即使没有找到应用包),文件资源管理器中的企鹅图标仍然存在,这通常是注册表残留项导致的。
重要提示:修改注册表存在风险,请务必谨慎操作。建议在操作前备份注册表。
- 按
Win + R
键,输入regedit
,然后按 Enter 打开注册表编辑器。 - 在注册表编辑器中,导航到以下路径(可以通过复制粘贴到地址栏快速访问):
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace
- 在左侧
NameSpace
项下,您会看到多个带有{...}
格式名称的子项。仔细查找可能与 “Linux” 或 “WSL” 相关的项。一个已知的与 WSL 文件访问相关的 CLSID 是{B2399B25-E344-4F50-9D4C-594146FCEF06}
。 - 在删除之前: 点击您怀疑是 Linux/WSL 的项,查看右侧窗口中的 “默认” (Default) 值。如果它提到了 Linux 或 WSL,那么很可能就是它。
- 备份(可选但推荐): 右键点击该
{...}
项,选择“导出”,将其保存到一个安全的位置,以便日后需要时可以恢复。 - 删除: 确认无误后,右键点击该
{...}
项,选择“删除”。系统会提示确认,点击“是”。 - 重启文件资源管理器或重启电脑:
- 重启文件资源管理器: 按
Ctrl + Shift + Esc
打开任务管理器,在“进程”选项卡中找到“Windows 资源管理器”(Windows Explorer),右键点击它,选择“重新启动”。 - 重启电脑: 如果重启资源管理器无效,请尝试重启整个计算机。
- 重启文件资源管理器: 按
上面的第二步注册表里找不到,我的是在下面的地址:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace{B2B4A4D1-2754-4140-A2EB-9A76D9D7CDC6}
注意:需要默认值是Linux的才能删除,删除之前最好备份!