操作系统升级到win11之后。由于想在windows下使用docker,而docker现在已经默认使用WSL2。之前系统之中的WSL需要升级WSL2。
WSL 1和WSL2的区别如下:
- WSL 1用的是Windows内核模拟的各种系统接口。虽然可以运行大部分Linux应用,但还是有不少依赖于内核的应用是无法正常运行的——例如Docker。另外WSL 1和Windows共用文件系统、网络,有些时候会比较头疼。
- WSL 2/Docker本质上都是Hyper-V。WSL 2是一个轻量级的Hyper-V VM;Docker for Windows如果要跑Linux镜像,会安装运行一台运行Linux的Hyper-V虚拟机,用Hyper-V的管理工具是可以看到的。
查看当前的WSL版本,在windows命令行界面运行如下命令
C:\Users\Administrator>wsl -l -v
NAME STATE VERSION
* Ubuntu Running 1
首先要确认已经BIOS中打开虚拟化,程序与功能–》启用或关闭Windows功能,已经打开的了Hyper-V等功能。
按照步骤 下载包
- 根据系统进行选择:
x64:https://wslstorestorage.blob.core.windows/wslblob/wsl_update_x64.msi
arm64:https://wslstorestorage.blob.core.windows/wslblob/wsl_update_arm64.ms- 运行上一步下载的更新包。
升级WSL到WSL2
在命令行窗口执行如下命令
wsl --set-version 分发版名称 版本号
分发版名称是根据在微软应用商店已经安装的版本,具体名称需要自己确认。版本号1对应的就是WSL1,2为WSL2.
该命令执行结果需要等待转制。
C:\Users\Administrator>wsl --set-version Ubuntu 2
正在进行转换,这可能需要几分钟时间...
有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2
如果出现Please enable the Virtual Machine Platform Windows feature and ensure virtualization is enabled in the BIOS,则说明BIOS中虚拟机未打开。
参考文档 安装 WSL |微软文档 (microsoft)
更多推荐
Windows的linux子系统:WSL升级WSL2
发布评论