安装教程:如何在Win10系统上安装WSL(适用于 Linux 的 Windows 子系统)
我是安装之后用VSCode连接WSL时出现了以下弹窗:
所以决定升级一下。因为docker也建议用WSL 2。
按照https://learn.microsoft.com/zh-cn/windows/wsl/basic-commands#set-wsl-version-to-1-or-2的要求,运行如下命令:
wsl --set-version <distribution name> <versionNumber>
示例:
wsl --set-version Ubuntu-24.04 2
打印如下内容:
正在进行转换,这可能需要几分钟时间...
有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2
WSL 2 需要更新其内核组件。有关信息,请访问 https://aka.ms/wsl2kernel
这个有关信息的网址是一个短网址,完整网址是:https://learn.microsoft.com/zh-cn/windows/wsl/install-manual#step-4---download-the-linux-kernel-update-package
根据该网址的要求,下载该文件:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
安装:
现在在Powershell中再次运行wsl --set-version Ubuntu-24.04 2
打印如下内容:
正在进行转换,这可能需要几分钟时间...
有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2
请启用虚拟机平台 Windows 功能并确保在 BIOS 中启用虚拟化。
有关信息,请访问 https://aka.ms/wsl2-install
这需要运行如下命令:dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
打印如下内容:
部署映像服务和管理工具
版本: 10.0.19041.3636
映像版本: 10.0.19045.5371
启用一个或多个功能
[==========================100.0%==========================]
操作成功完成。
然后重启计算机。
然后这一步非常诡异的是现在在powershell中就无法运行wsl
命令了,会显示这个:
wsl : 无法将“wsl”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
所在位置 行:1 字符: 1
+ wsl
+ ~~~
+ CategoryInfo : ObjectNotFound: (wsl:String) [], CommandNotFoundException
+ FullyQualifiedErrorId : CommandNotFoundException
呃,但是不要慌,因为万能的互联网,依然有人解决了问题:解决WIN10 WSL安装报错 - 哔哩哔哩
解决方案是改为用管理员权限打开cmd运行:wsl --set-version Ubuntu-24.04 2
输出:
正在进行转换,这可能需要几分钟时间...
有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2
转换完成。
就说明转换完成了。
必须要用cmd而不是powershell的原理是:
https://learn.microsoft.com/zh-cn/windows/wsl/troubleshooting中文版:
x64是这样的。总之用cmd就得了!
通过wsl --list --verbose
命令可以查看当前安装的WSL分发版及其版本: