如何解决Windows 11中的WSL(Windows子系统 for Linux)错误:0x80370102。该错误提示“虚拟机无法启动,因为缺少必要的功能”。本文将介绍如何验证Windows功能,并通过使用Windows子系统 for Linux版本1进行解决。

Windows子系统 for Linux - Ubuntu发行版

以下是您在运行Windows子系统 for Linux - Ubuntu发行版时可能遇到的完整错误信息:

  1. 安装中,这可能需要几分钟……
  2. WslRegisterDistribution失败,错误代码:0x80370102
  3. 错误:0x80370102 虚拟机无法启动,因为缺少必要的功能。
  4. 按任意键继续……

实际演示

关于Ansible故障排除的最佳方式是通过实际演示,展示如何解决错误0x80370102。以下是针对Windows 11版本11 Build 22000(发布日期2021年6月4日)的WSL错误的现场演示。

错误代码

以下是复现WSL安装错误的步骤:

1. Windows PowerShell  
2. 版权所有 (C) Microsoft Corporation。保留所有权利。  
3. 安装最新版PowerShell以获取新功能和改进!<https://aka.ms/PSWindows>  
4. PS C:\Users\user> wsl --install  
5. 正在安装:虚拟机平台  
6. 虚拟机平台已安装。  
7. 正在安装:Windows子系统 for Linux  
8. Windows子系统 for Linux已安装。  
9. 正在下载:WSL内核  
10. 正在安装:WSL内核  
11. WSL内核已安装。  
12. 正在下载:GUI应用支持  
13. 正在安装:GUI应用支持  
14. GUI应用支持已安装。  
15. 正在下载:Ubuntu  
16. 请求的操作已成功。重启系统后更改才会生效。  

复现Ubuntu WSL错误

1. 安装中,这可能需要几分钟……  
2. WslRegisterDistribution失败,错误代码:0x80370102  
3. 错误:0x80370102 虚拟机无法启动,因为缺少必要的功能。  
4. 按任意键继续……  

WSL版本2需要启用的Windows功能

如果您的CPU不支持虚拟化或虚拟化环境不受支持,您可能会遇到以下错误:

1. Hyper-V无法安装:处理器不支持二级地址转换(SLAT)。  

解决方案

对于不支持的CPU或虚拟化环境,可以尝试以下解决方案:

1. wsl --update  
2. wsl --set-default-version 1  
3. wsl --list -o  
4. wsl --install -d Ubuntu  

解决方案执行过程

以下是执行解决方案后的输出:

1. Windows PowerShell  
2. 版权所有 (C) Microsoft Corporation。保留所有权利。  
3. 安装最新版PowerShell以获取新功能和改进!<https://aka.ms/PSWindows>  
4. PS C:\Users\user> wsl --update  
5. 正在检查更新……  
6. 正在下载更新……  
7. 正在安装更新……  
8. 此更改将在下次完全重启WSL后生效。若要强制重启,请运行“wsl --shutdown”。  
9. 内核版本:5.10.60.1  
10. PS C:\Users\user> wsl --set-default-version 1  
11. 操作成功完成。  
12. PS C:\Users\user> wsl --list -o  
13. 以下是可以安装的有效发行版列表。  
14. 使用“wsl --install -d <Distro>”进行安装。  
15. NAME FRIENDLY NAME  
16. Ubuntu Ubuntu  
17. Debian Debian GNU/Linux  
18. kali-linux Kali Linux Rolling  
19. openSUSE-42 openSUSE Leap 42  
20. SLES-12 SUSE Linux Enterprise Server v12  
21. Ubuntu-16.04 Ubuntu 16.04 LTS  
22. Ubuntu-18.04 Ubuntu 18.04 LTS  
23. Ubuntu-20.04 Ubuntu 20.04 LTS  
24. PS C:\Users\user> wsl --install -d Ubuntu  
25. Ubuntu已安装。  
26. 启动Ubuntu……  
27. 安装中,这可能需要几分钟……  
28. 请创建默认的UNIX用户账户。用户名无需与Windows用户名匹配。  
29. 更多信息请访问:<https://aka.ms/wslusers>  
30. 输入新的UNIX用户名:demo  
31. 新密码:  
32. 重新输入新密码:  
33. passwd:密码更新成功  
34. 安装成功!  
35. 若要以管理员(用户“root”)身份运行命令,请使用“sudo <command>”。  
36. 详情请参阅“man sudo_root”。  
37. 欢迎使用Ubuntu 20.04 LTS (GNU/Linux 4.4.0-22000-Microsoft x86_64)  
38. * 文档:<https://help.ubuntu.com>  
39. * 管理:<https://landscape.canonical.com>  
40. * 支持:<https://ubuntu.com/advantage>  
41. 系统信息截至2022年1月10日16:57:36 UTC  
42. 系统负载:0.52 登录用户数:0  
43. /home使用情况:未知 eth0的IPv4地址:10.0.2.15  
44. 内存使用率:73% eth1的IPv4地址:169.254.235.130  
45. 交换区使用率:1% eth1的IPv4地址:192.168.0.209  
46. 进程数:7  
47. 可立即安装的更新数:0  
48. 安全更新数:0  
49. 可用更新列表已超过一周。  
50. 要检查新更新,请运行:sudo apt update  
51. 该消息每天显示一次。若要禁用,请创建/home/demo/.hushlogin文件。  
52. demo@demo:~$