启动wsl里的Ubuntu24报错:当前计算机配置不支持 WSL2,HCS_E_HYPERV_NOT_INSTALLED

问题:启动wsl里的Ubuntu24报错

报错信息:

当前计算机配置不支持 WSL2。

请启用"虚拟机平台"可选组件,并确保在 BIOS 中启用虚拟化。

通过运行以下命令启用"虚拟机平台": wsl.exe --install --no-distribution

有关信息,请访问 https://aka.ms/enablevirtualization

错误代码: Wsl/Service/CreateInstance/CreateVm/HCS/HCS_E_HYPERV_NOT_INSTALLED

自己估计原因是前段时间关闭了虚拟化

重新打开虚拟化,然后执行:

复制代码
wsl.exe --install --no-distribution

结果执行完这句后,还是一样的报错信息。

进入:控制面板\程序\程序和功能 ,执行"启用或关闭Windows功能",发现里面的Hyper-V确实没有选中,将其勾选,然后重启系统。

重启系统后,点图标进入ubuntu报错:

无法打开 Ubuntu 24.04.1 LTS,因为它处于脱机状态。可能缺少存储设备,或者存储设备已断开连接。

到微软商店里重装,没搞定。

到cmd里执行重装,有报错:

复制代码
wsl --install
无法从"https://raw.githubusercontent.com/microsoft/WSL/master/distributions/DistributionInfo.json"中提取列表分发。无法解析服务器 的名称或地址
错误代码: Wsl/InstallDistro/WININET_E_NAME_NOT_RESOLVED

ping测试一下:

复制代码
ping githubusercontent.com
Ping 请求找不到主机 githubusercontent.com。请检查该名称,然后重试。

发现确实找到不服务器,于是到网上找了解析,然后修改文件:C:\Windows\System32\drivers\etc\hosts

将这段解析加入进去:

185.199.108.133 raw.githubusercontent.com

这样wsl --install 就能执行了。

(认为也可以使用微软的Store来安装,重装了ubuntu24,但是不管用,还是报错)。所以wsl --install 这句少不了。

安装好后还是报错:

复制代码
当前计算机配置不支持 WSL2。
请启用"虚拟机平台"可选组件,并确保在 BIOS 中启用虚拟化。
通过运行以下命令启用"虚拟机平台": wsl.exe --install --no-distribution
有关信息,请访问 https://aka.ms/enablevirtualization
错误代码: Wsl/InstallDistro/Service/RegisterDistro/CreateVm/HCS/HCS_E_HYPERV_NOT_INSTALLED

明白了,原来可能是我以前把wsl升级到wsl2了,要去掉才行

复制代码
C:\Users\Admin>wsl --set-default-version 1
操作成功完成。

C:\Users\Admin>wsl --install
正在下载: Ubuntu
正在安装: Ubuntu
已成功安装分发。它可通过 "wsl.exe -d Ubuntu" 启动

但是在商店Store安装了Ubuntu20.04,可以进。

Ubuntu22和24都不可以,报错。后来知道wsl1的能进,wsl2的不能进。

复制代码
当前计算机配置不支持 WSL2。
请启用"虚拟机平台"可选组件,并确保在 BIOS 中启用虚拟化。
通过运行以下命令启用"虚拟机平台": wsl.exe --install --no-distribution
有关信息,请访问 https://aka.ms/enablevirtualization
错误代码: Wsl/Service/CreateInstance/CreateVm/HCS/HCS_E_HYPERV_NOT_INSTALLED

也就是现在系统里有wsl1 和wsl2 ,估计是上次装安卓虚拟机的时候装了wsl2导致的。

果然,所有wsl2的都出问题了:

复制代码
C:\Users\Admin>wsl -l -v
  NAME                   STATE           VERSION
* Ubuntu-24.04           Stopped         2
  docker-desktop-data    Stopped         2
  Ubuntu-20.04           Stopped         1
  docker-desktop         Stopped         2
  Ubuntu-22.04           Stopped         2
  Ubuntu                 Running         1

尝试解决问题

方法1

以管理员身份打开powershell

执行

复制代码
 Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All


FeatureName      : Microsoft-Hyper-V-All
DisplayName      : Hyper-V
Description      : 提供一些帮助创建和运行虚拟机及其资源的服务和管理工具。
RestartRequired  : Possible
State            : Enabled
CustomProperties :

没问题啊,

重新部署一下

复制代码
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

部署完成:

复制代码
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

部署映像服务和管理工具
版本: 10.0.19041.3636

映像版本: 10.0.19045.5487

启用一个或多个功能
[==========================100.0%==========================]
操作成功完成。

启用虚拟机平台

复制代码
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

启动成功:

复制代码
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

部署映像服务和管理工具
版本: 10.0.19041.3636

映像版本: 10.0.19045.5487

启用一个或多个功能
[==========================100.0
  • 勾选虚拟机平台 / Windows 虚拟机监控程序平台

控制面板\程序\程序和功能 ,执行"启用或关闭Windows功能",将里面的虚拟机平台 / Windows 虚拟机监控程序平台勾选上。

还是没搞定.....

这样,先把虚拟机改成wsl1吧

复制代码
 wsl --set-version Ubuntu-24.04 1
正在进行转换,这可能需要几分钟时间。

当前计算机配置不支持 WSL2。
请启用"虚拟机平台"可选组件,并确保在 BIOS 中启用虚拟化。
通过运行以下命令启用"虚拟机平台": wsl.exe --install --no-distribution
有关信息,请访问 https://aka.ms/enablevirtualization
错误代码: Wsl/Service/CreateVm/HCS/HCS_E_HYPERV_NOT_INSTALLED

啥计算机配置不支持WSL2 啊!

看网上,大部分把hyper-V打上勾就好了

有同样问题的:How to solve Wsl/Service/CreateInstance/CreateVm/HCS/HCS_E_HYPERV_NOT_INSTALLED - Microsoft Q&A

github也有:

Error code: Wsl/Service/CreateInstance/CreateVm/HCS/HCS_E_HYPERV_NOT_INSTALLED · Issue #10332 · microsoft/WSL

方法2

用这条试试

复制代码
bcdedit /set hypervisorlaunchtype auto

重启后,成了!

总结

在近期使用VirtualBox和VMware之后,还是想用轻量级的wsl ubuntu虚拟环境,结果发现报错:当前计算机配置不支持 WSL2。

尝试解决,看网上,大部分只要把Hyper-V勾上重启就行了。具体操作:控制面板\程序\程序和功能 ,执行"启用或关闭Windows功能",将Hyper-V选中,将其勾选,然后重启系统。

我这个好像没成,是又进行了如下的操作:

以管理身份打开powershell,然后重新部署一下:

复制代码
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

启用虚拟机平台

复制代码
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

打开服务

复制代码
bcdedit /set hypervisorlaunchtype auto

重启电脑!

就成了!

相关推荐
Nie_Xun3 小时前
ubuntu网络共享
linux·运维·ubuntu
wuicer12 小时前
ubuntu 20.04 安装anaconda以及安装spyder
linux·运维·ubuntu
cpsvps_net13 小时前
美国服务器环境下Windows容器工作负载智能弹性伸缩
windows
甄超锋14 小时前
Java ArrayList的介绍及用法
java·windows·spring boot·python·spring·spring cloud·tomcat
shuangrenlong15 小时前
ubuntu更新chrome版本
linux·chrome·ubuntu
cpsvps16 小时前
美国服务器环境下Windows容器工作负载基于指标的自动扩缩
windows
网硕互联的小客服19 小时前
Apache 如何支持SHTML(SSI)的配置方法
运维·服务器·网络·windows·php
etcix19 小时前
implement copy file content to clipboard on Windows
windows·stm32·单片机
基于python的毕设19 小时前
C语言栈的实现
linux·c语言·ubuntu
许泽宇的技术分享20 小时前
Windows MCP.Net:基于.NET的Windows桌面自动化MCP服务器深度解析
windows·自动化·.net