Windows安装配置WSL2(Ubuntu 22.04)(请直接阅读官方文档)

Posted on Jan 22, 2024

微软官方文档:

  • 中文:https://learn.microsoft.com/zh-cn/windows/wsl/
  • 英文:https://learn.microsoft.com/en-us/windows/wsl/

什么是WSL?

Windows Subsystem for Linux(WSL)是 Windows 的一项功能,可用于在 Windows 计算机上运行 Linux 环境,而无需单独的虚拟机或双引导。 WSL 旨在为希望同时使用 Windows 和 Linux 的开发人员提供无缝高效的体验。

什么是WSL2?

安装 Linux 发行版时,WSL 2 是默认发行版类型。 WSL 2 使用虚拟化技术在轻量级实用工具虚拟机 (VM) 中运行 Linux 内核。 Linux 发行版作为独立的容器在 WSL 2 托管 VM 内运行。 通过 WSL 2 运行的 Linux 发行版将共享同一网络命名空间、设备树(而非 /dev/pts)、CPU/内核/内存/交换空间、/init 二进制文件,但有自己的 PID 命名空间、装载命名空间、用户命名空间、Cgroup 命名空间和 init 进程。

比较WSL版本

WSL 2 提高了文件系统性能,并且与 WSL 1 体系结构相比增加了完整的系统调用兼容性。WSL 1 和 WSL 2 之间的主要区别在于,在托管 VM 内使用实际的 Linux 内核、支持完整的系统调用兼容性以及跨 Linux 和 Windows 操作系统的性能。 WSL 2 是安装 Linux 发行版时的当前默认版本,它使用最新最好的虚拟化技术在轻量级实用工具虚拟机 (VM) 内运行 Linux 内核。 WSL2 将 Linux 发行版作为托管 VM 内的隔离容器运行。

从上面的比较表中可以看出,WSL 2 架构在几个方面优于 WSL 1,但跨 OS 文件系统的性能除外,对于这种情况,可通过将项目文件存储在与处理项目时运行的工具相同的操作系统上进行处理。

安装WSL2

简洁安装

必须运行 Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)或 Windows 11 才能使用以下命令。 如果使用的是更早的版本,请使用旧版本手动安装方式

  • 在管理员模式下打开 PowerShell 或 Windows命令提示符
  • 查看可用发行版列表
wsl --list --online
  • 运行wsl --install -d <DistroName>以安装一个发行版,安装完成后重启电脑

使用 wsl --install 命令安装的新 Linux 安装默认设置为WSL 2,无需另外操作。

首次启动新安装的 Linux 发行版时,将打开一个控制台窗口,要求你等待将文件解压缩并存储到计算机上。 未来的所有启动时间应不到一秒。

可列出已安装的 Linux 发行版,并通过在 PowerShell 或 Windows 命令提示符中输入以下命令来检查每个发行版的 WSL 版本:wsl -l -v

要在安装新的 Linux 发行版时将默认版本设置为 WSL 1 或 WSL 2,请使用命令 wsl --set-default-version <Version#>,将 <Version#> 替换为 1 或 2。

旧版本手动安装

  • 以管理员身份打开PowerShell并运行以下命令以启用WSL功能
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
  • 安装WSL2之前,必须运行以下命令启用“虚拟机平台”可选功能
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  • 为了确保所有相关部件都整齐到位,需要重启系统,否则可能会发现事情没按预期进行。 重新启动计算机以完成WSL安装并更新到WSL2

  • 下载Linux内核更新包:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi (如果是ARM64电脑,点击文档中提供的ARM64包)

  • 运行更新包,并在PowerShell中将WSL2设置为默认版本

wsl --set-default-version 2
  • 打开Microsoft Store,选择偏好的Linux发行版并下载 首次启动新安装的 Linux 分发版时,将打开一个控制台窗口,系统会要求你等待一分钟或两分钟,以便文件解压缩并存储到电脑上。 未来的所有启动时间应不到一秒。

然后,需要为新的Linux发行版创建用户账号和密码

推荐使用Windows终端或VSCode打开WSL2 Windows终端:https://learn.microsoft.com/zh-cn/windows/terminal/install VSCode:https://learn.microsoft.com/zh-cn/windows/wsl/tutorials/wsl-vscode

参考文档:https://learn.microsoft.com/zh-cn/windows/wsl/

这次安装也让我吸取了一个教训,之前总倾向于看别人写的教程,今天看微软的安装文档,十分详尽,而且之前看的安装教程几乎就是COPY了一下官方文档(我这个也是…所以下次就没有写的必要了)。正确的流程大概是先看官方文档,遇到问题再去搜别人的解决方案。

Read The Fucking Document!