如何在Windows 10上安装WSL 2

windows2012技巧

WSL 2是Microsoft早在2017年推出的WSL原始版本的重大升级。WSL2更快,更通用,并且使用了真正的Linux内核。
在Windows 10 安装WSL 2 的前提:

1、版本:Windows 10 May 2020 (2004), Windows 10 May 2019 (1903), or Windows 10 November 2019 (1909) or later
若要更新到 WSL 2,需要运行 Windows 10。
对于 x64 系统:版本 1903 或更高版本,采用 内部版本 18362 或更高版本。
对于 ARM64 系统:版本 2004 或更高版本,采用 内部版本 19041 或更高版本。
低于 18362 的版本不支持 WSL 2。 使用 Windows Update 助手更新 Windows 版本。
若要检查 Windows 版本及内部版本号,选择 Windows 徽标键 + R,然后键入“winver”,选择“确定”。 (或者在 Windows 命令提示符下输入 ver 命令)。 更新到“设置”菜单中的最新 Windows 版本。

2、必须支持 Hyper-V Virtualization
如何知道你的PC是否可以运行Hyper-V?以下是方法:
在搜索框中键入“MSINFO32”,顶部单击“系统信息”。滚动到最后,并查找以Hyper-V开头的四个项目。如果每个旁边都显示“是”,则可以启用Hyper-V。如果在“在固件中启用虚拟化后”设置中看到“否”,则必须进入BIOS(或UEFI固件)设置并打开对虚拟化的支持。如果在其他任何项目旁边看到“否”,则将无法运行Hyper-V。
如果看到消息“检测到虚拟机监控程序...”开始,表示您已经在运行虚拟化软件或正在虚拟机中工作。

尽管2020年5月10日的Windows 10更新于2020年5月发布,但并非当前所有设备都可以升级。
要查看您的计算机上是否有Windows 10 May 2020更新,(Settings > Update & Security > Windows Update)(点击“设置”>“更新和安全性”>“ Windows Update”)

以下是安装WSL 2 的具体步骤:
1、启用WSL 2,以管理员身份运行PowerShell。执行命令:

dism.exe / online /启用功能/功能名称:Microsoft-Windows-Subsystem-Linux / all / norestart

2、启用“虚拟机平台” (Enable ‘Virtual Machine Platform’ )
如果是Windows 10 (2004) ,命令如下:

dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

如果是Windows 10 (1903, 1909) ,命令如下:

Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -NoRestart
重启服务器!

3、将WSL 2设置为默认值(Set WSL 2 as default),命令如下:

wsl --set-default-version 2

4、安装Linux发行版(Install a Linux distro)
有了WSL和必要的虚拟化技术之后,您要做的就是从Microsoft Store中选择并安装Linux发行版。包括OpenSUSE,Pengwin,Fedora Remix和Alpine Linux。
建议:Ubuntu 20.04 LTS(尽管也提供18.04 LTS和16.04 LTS)。
要在Windows 10上安装Ubuntu,请打开Microsoft Store应用,搜索“ Ubuntu 20.04”,然后单击“获取”按钮,地址如下:
https://www.microsoft.com/zh-cn/p/ubuntu-2004-lts/9n6svws3rx71?activetab=pivot:overviewtab
另外强烈建议安装“open source Windows Terminal app”(Windows 终端程序),地址:
https://www.microsoft.com/zh-cn/p/windows-terminal/9n0dx20hk701?activetab=pivot:overviewtab

小技巧:
将WSL 1上的Ubuntu转换为WSL 2的命令(在PowerShell中运行):

wsl.exe --set-version Ubuntu 2