windows-subsystem-for-linux - WSL 在尝试所有步骤以升级到版本 2 后如果失败:WslRegisterDistribution failed with error: 0x80370102
问题描述
从 VS Code 中启动任何 WSL “未找到 WSL 发行版。可以从 Microsoft Store 安装新发行版。
源远程 - WSL(扩展)
按钮:“添加发行版”-> 将您带到商店。安装 Linux 版本,并尝试启动它,您会得到以下信息。我以前曾使用过 WSL,但现在无法将其恢复为原来的工作 WSL。
我尝试了一些东西来更新到版本 2,我可以使用命令“ WSL -l -v
”列出版本,但它出现了,但不再显示了。我已经正确设置了功能。WSL 功能已启用。我确实尝试在具有 AMD 64 位 cpu 的 HP 笔记本电脑上设置 bios“虚拟化技术”。在发现它没有帮助之后,现在关闭了。
特性:“虚拟机平台”、“Windows Hypervisor 平台”、“Linux 的 Windows 子系统”还有其他的,但这些似乎相关。
安装,这可能需要几分钟... WslRegisterDistribution 失败,错误:0x80370102 错误:0x80370102 由于未安装必需的功能,无法启动虚拟机。
按任意键继续...
解决方案
这必须有bios设置。也因为是 Windows 10 Home 没有 Hyper V 功能,但是有一批可以添加这个。有一个安装 WSL 2 的 msi,因此升级了 wsl.exe。这得到了显示 ubuntu-20-04 安装的 WSL 版本 2 的结果还有一些重置需要让“WSL -l -v”命令运行。
我不知道 100% 确定这些是解决问题的方法。但可能会帮助无法让 Linux 启动而不会在 Windows 子系统 Linux 上运行的各种错误的人。我花了一天的时间来修复。
通过谷歌搜索“del hyper-v.txt”找到以下内容,您将点击一个页面,告诉您“如何在 Windows 10 Home 中激活 Hyper-V”
批处理命令的来源 https://github.com/MicrosoftDocs/Virtualization-Documentation/issues/915
推送“%~dp0” dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i" del hyper-v.txt Dism /online /enable-feature /featurename:Microsoft-Hyper-V -All /LimitAccess /ALL 暂停
重新启动,仍然没有运行,但需要以下顺序。
wsl --关闭 netsh winsock 重置 netsh int ip 重置 ipconfig /发布 ipconfig /更新 ipconfig /flushdns
wsl -l -v
名称 国家版本 * Ubuntu-20.04 运行 2
最初只有一个 root 用户。在 %userprofile% 文件夹中使用以下内容更新了新用户。省略破折号和点。
Ubuntu2004 config --default-user addedUsername
VS Code 扩展现在可以看到 WSL,并且不再标记为更新到版本 2。现在转到 VS Code 下的 RxJS 教程。
推荐阅读
- python - 为什么 sep='|' 当使用 Pandas to_csv 出现逗号时,结果会出现偏差?
- python - 在嵌套交叉验证后应用置换测试
- c++ - 最小可执行文件文件对齐 (MSVC 2019)
- android - 更改作为 BottomAppBar 一部分的浮动操作按钮下方的背景颜色
- javascript - 如何通过单击包含它的 div 来选中/取消选中复选框?
- javascript - 如何在画布中绘制第一个视频的帧?
- python - 生成日志 Python
- html - 我应该如何找到从日期到今天的时间?
- oracle - 更改默认 Sid,新建连接对话框,oracle sqldeveloper
- sql - 看起来相似的2个条件之间的差异