开箱即用,Windows 11 可以识别该wsl
命令的存在。但是,它除了显示有关以下标志的信息外,没有带我去任何地方wsl --install
:
首先,我做了以下事情以避免在新系统上不必要地安装臃肿的东西:
- 以管理员身份打开 PowerShell。
- 运行以下命令:
PS C:\Users\User> Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
。
- 重新启动了笔记本电脑。
希望现在wsl
命令能起作用。唉,它和以前一样。
运行后wsl --install
,我得到了 14 个发行版选项的列表。
我运行了以下命令powershell.exe
:
PS C:\Users\User> wsl --install -d Ubuntu
并得到:
An error occurred during installation. Distribution Name: 'Ubuntu' Error Code: 0x8000ffff
我搜索了错误代码,发现可能是以下问题:1. 更新组件(不管它是什么)或 2. 第三方软件(比如我拥有的 McAfee Antivirus)。
背景:- 我为什么要尝试启用wsl
?
- 运行 ROS2 来设置笔记本电脑和控制器板之间的通信
- 为了验证我之前关于文本合并的问题的答案
现在我应该做什么?
编辑(27/8/24):
根据这个答案,我采取了以下措施:
首先,我从 MS Store 安装了 WSL。将来,我可能会尝试使用或通过互联网搜索winget
找到完整版。wsl.exe
最后,我运行了不带标志的命令-d
并得到了以下内容(逐字):
PS C:\Users\User\Documents> wsl --install Ubuntu Ubuntu is already installed. Launching Ubuntu... Installing, this may take a few minutes... Please create a default UNIX user account. The username does not need to match your Windows username. For more information visit: https://aka.ms/wslusers Enter new UNIX username: user New password: Retype new password: passwd: password updated successfully The operation completed successfully. Installation successful! To run a command as administrator (user "root"), use "sudo ". See "man sudo_root" for details.
Welcome to Ubuntu 22.04.3 LTS (GNU/Linux 5.15.153.1-microsoft-standard-WSL2 x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
This message is shown once a day. To disable it please create the /home/user/.hushlogin file.
因此,感谢超级用户,安装成功。感谢所有使此过程成为可能的人。我希望每个问题故障排除都顺利进行。祝一切顺利!
首先,可能也是最重要的一点,没有
wsl --install -d
选项。它只是wsl --install <distro>
,其中发行版是可选的。Ubuntu 是默认的。但是也:
命令中没有提到
wsl --install
“膨胀”。另一方面,Enable-WindowsOptionalFeature
您运行的命令确实通过在您的系统上安装过时(且不完整)的 WSL 版本安装了“膨胀” 。就您的问题而言,您可以认为命令行有三个不同版本
wsl.exe
:开箱即用,正如您所注意到的,有一个“存根”
wsl.exe
可以处理安装,仅此而已。有一个旧版本
wsl.exe
是 Windows 可选功能。但是,几年来情况并非如此。此版本仍然具有 WSL2 的其他依赖项,因此您几乎肯定没有正常运行的 WSL2 安装 - 只有 WSL1。虽然您可能对此没有意见,但请记住,据我所知,WSL1 已经好几年没有更新了,甚至没有修复一些严重破坏 22.04 的严重错误。所有开发似乎都在 WSL2 中。注意:在您给定的状态下,WSL1 很可能现在被设置为新发行版安装的默认版本。安装 Ubuntu 后,请确保使用 检查它在哪个 WSL 版本下运行
wsl -l -v
。如今以及过去几年,WSL 的主要功能都包含在通常从 Microsoft Store 安装的App/Package 中。
wsl.exe
它既可用作 WSL 的命令行界面,也可用作其他发行版的安装程序。该wsl --install
命令负责启用正确的组件以及从 Store 安装 WSL 和默认发行版。正如 Ramhound 在评论中提到的,您正在寻找的命令很简单
wsl --install
。