我正在尝试在 Windows 11 机器上安装 Ubuntu,但出现以下错误:
WslRegisterDistribution failed with error: 0xffffffff
Error: 0xffffffff (null)
系统信息:
Edition Windows 11 Home Single Language
Version 22H2
Installed on 2022-09-12
OS build 22623.1037
Experience Windows Feature Experience Pack 1000.22638.1000.
输出wsl --version
:
WSL version: 1.0.3.0
Kernel version: 5.15.79.1
WSLg version: 1.0.47
MSRDC version: 1.2.3575
Direct3D version: 1.606.4
DXCore version: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows version: 10.0.22623.1037
答案1
来自Stack Overflow 上有关同一错误消息的问题这是评论中的参考,有几条建议。我打算在这里添加它们(还有一些其他建议),希望它们能对你(和其他人)有所帮助。
首先,为了其他人的利益,过去当 Windows 主机上的端口 53 上运行另一个服务时,通常会导致此错误。在评论中,您提到您已经在系统上检查过这一点。但是,如果以下建议仍然对您不起作用,那么我建议您关注这个领域。
当用户的配置文件被加密和/或压缩时,会出现网络问题(理论上,这可能导致端口 53 冲突)。如 SO 答案中所述,尝试使用文件资源管理器导航到
%localappdata%\Packages\
。在其中查找Canonical...
文件夹。名称将根据您尝试安装的 Ubuntu 版本而有所不同,但您可以安全地更改所有这些:右键单击每个文件夹
Canonical...
,单击先进的按钮一般的选项卡,并确保压缩也不加密选项被选中。如果其他方法都失败了,那么对许多人来说成功的主要“解决方法”是在 WSL1 下安装 Ubuntu,然后将其转换为 WSL2。
由于您使用的是 Windows 11,因此 WSL1 可能不再安装(目前仍在 Windows 10 上)。请检查它,并在需要时将其打开打开或关闭 Windows 功能设置。
从 PowerShell(以普通用户身份,不是作为管理员,尽管 Stack Overflow 的答案是这样的):
wsl --set-default-version 1
检查是否有任何 Ubuntu 已注册:
wsl -l -v
根据上述错误,不应该存在。
运行
ubuntu.exe
(如果使用来自商店的“普通、未版本化”的 Ubuntu),,,ubuntu2004.exe
等等ubuntu2204.exe
。这样注册会花费更长的时间,但希望能够成功。完成后,系统会要求您输入 Ubuntu 用户名和密码。
如果完成,那么您可以尝试将发行版更改为 WSL2。首先,退出 Ubuntu。从 PowerShell(再次以普通用户身份):
wsl -l -v # Confirm the name of the distribution is "Ubuntu" and modify the next command if needed wsl --shutdown wsl --set-version ubuntu 2 wsl ~ -d ubuntu