admin管理员组

文章数量:1794759

Windows的linux子系统:WSL升级WSL2

Windows的linux子系统:WSL升级WSL2

​ 操作系统升级到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:wslstorestorage.blob.core.windows/wslblob/wsl_update_x64.msi arm64: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 的主要区别的信,请访问 aka.ms/wsl2

    如果出现Please enable the Virtual Machine Platform Windows feature and ensure virtualization is enabled in the BIOS,则说明BIOS中虚拟机未打开。

    参考文档 安装 WSL |微软文档 (microsoft)

    本文标签: 子系统LinuxwindowsWSL