如何修复WSL寄存器分配错误0x80370102?

当用户尝试安装 Linux 发行版以通过 Windows Subsystem for Linux 2 访问时出现此错误 。在详细查看用户反馈和技术权威后,用户报告在尝试安装 Linux Distro for Windows Subsystem for Linux 2 时遇到错误消息 0x80370102 (WSL2) 。报错提示如下:
WSL寄存器分配报错0x80370102是什么原因?这个错误是非常新的,并不只在 Linux 发行版中遇到过 。在尝试安装 Debian 发行版时也遇到过此错误 。我们在详细查阅用户反馈和技术权威后,列出了导致该问题的原因 。由于以下任一原因,可能会出现此问题:

  • 开发中:当人们尝试运行 Windows Insider Preview 版本时会出现此错误 。用户可能会在他们正在使用的构建中看到缺陷或错误,这些构建仍在开发中 。
  • 升级 WSL:具有所有必需修复程序的完整开发版本将支持该子系统 。WSL 2 正在开发中,其中仍然存在错误,因此从 WSL 1 切换到 WSL 2 将导致此错误 。
  • 禁用虚拟化:虚拟化是创建基于软件或虚拟表示的过程,例如虚拟应用程序、服务器、存储和网络 。如果在 BIOS 中的安全性下禁用了虚拟化设置,则会发生此错误 。
  • Hyper-V:它是微软的一项技术,允许用户创建虚拟计算机环境,并在一台物理服务器上运行和管理多个操作系统 。因此,当从 bios 中禁用 Hyper-V 时,会发生 Wsl 寄存器分发错误 。
解决方案 1:从 BIOS 启用硬件虚拟化当用户尝试在没有启用硬件虚拟化的情况下在 VirtualBox 中运行 Ubuntu 时,系统会生成多个错误,例如音频性能问题、Wsl 注册分发错误等 。虚拟机模拟计算机系统,因此任何人都可以运行不同的操作系统和程序 。按照以下步骤从 BIOS 启用硬件虚拟化:
  1. 单击“开始”,然后选择“电源选项”并单击“重新启动”
  2. 根据您的 BIOS 制造商,登录 BIOS 的密钥会有所不同 。屏幕变黑后,立即按键盘上的Del、Esc、F1、F2 或 F4键 。注意:如果您第一次没有进入,请重新启动您的 PC 并尝试另一个密钥 。
  3. 找到 CPU 配置部分(菜单可以称为处理器、CPU 配置、芯片组)
  4. 找到虚拟化设置并启用它 。
    注意:(虚拟设置可以命名为Intel Virtualization TechnologyAMD-VHyper-VVT-XVanderpoolSVM) 。
  5. 选择选项保存并退出 。
  6. 计算机将在启用硬件虚拟化的情况下重新启动 。检查问题是否仍然存在 。如果是这样,请按照下一个方法进行操作 。
注意:确保您的设备支持硬件虚拟化 。您可以在任务管理器的性能选项卡下查看是否启用了虚拟化 。
解决方案 2:启用 Hyper-V 角色Hyper-V 使管理员能够通过虚拟化多个操作系统同时在同一台物理服务器上运行来更好地利用他们的硬件 。如果我们不启用它,它会在安装 Linux 发行版以通过 Windows 访问时产生错误 。按照下面给出的步骤启用 Hyper-V:
  1. 单击“开始”,搜索“控制面板”,然后将其打开 。
  2. 单击程序
  3. 单击程序和功能
  4. 在左侧面板上,单击打开或关闭 Windows 功能选项 。
  5. 检查Hyper-V选项并单击确定
  6. 现在重新启动系统以使这些更改生效 。如果这没有帮助,请继续执行下一个解决方案 。
解决方案 3:公开虚拟化扩展并更改 RAM 设置来源3
嵌套虚拟化是一种允许您在 Hyper-V 虚拟机 (VM) 内部运行 Hyper-V 的功能 。这有助于在虚拟机中运行 Visual Studio 手机模拟器,或测试通常需要多个主机的配置 。据报道,激活嵌套虚拟化已成为许多在线用户的解决方案 。因此,请按照以下步骤操作:
  1. 在 Hyper-V 管理器中关闭虚拟机 。
  2. 按键盘上的Win + X ,然后从弹出列表中选择Windows PowerShell (Admin)。
  3. 在 PowerShell 窗口中,复制并粘贴此命令以将名称和值更改为您的 VM 处理器 。【如何修复WSL寄存器分配错误0x80370102?】设置 VMProcessor-ExposeVirtualizationExtensions $true
  4. Enter运行它 。
  5. 现在在 Hyper-V Manager 中右键单击您的虚拟机并选择Settings
  6. 单击左窗格中的内存,取消选中启用动态内存并将RAM 值加倍,例如 2048 > 4096 。
  7. 启动您的虚拟机 。
  8. 右键单击您的虚拟机并选择连接 。这将运行 Hyper-V,您的系统将重新启动 。再次尝试运行 Ubuntu 。这最终应该可以解决您的问题 。