为简单起见,通常建议使用 wsl --install 安装适用于 Linux 的 Windows 子系统,但如果运行的是旧版 Windows,则可能不支持这种方式。 下面介绍了手动安装步骤。
步骤 1 - 启用适用于 Linux 的 Windows 子系统
需要先启用“适用于 Linux 的 Windows 子系统”可选功能,然后才能在 Windows 上安装 Linux 分发。
以管理员身份打开 PowerShell(“开始”菜单 >“PowerShell” >单击右键 >“以管理员身份运行”),然后输入以下命令:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
建议现在转到步骤 #2,更新到 WSL 2,但如果只想安装 WSL 1,现在可以重新启动计算机,然后继续执行步骤 6 - 安装所选的 Linux 发行版。 若要更新到 WSL 2,请等待重新启动计算机,然后继续执行下一步。
步骤 2 - 检查运行 WSL 2 的要求
若要更新到 WSL 2,需要运行 Windows 10。
- 对于 x64 系统:版本 1903 或更高版本,内部版本为 18362.1049 或更高版本。
- 对于 ARM64 系统:版本 2004 或更高版本,内部版本为 19041 或更高版本。
或 Windows 11。
步骤 3 - 启用虚拟机功能
安装 WSL 2 之前,必须启用“虚拟机平台”可选功能。 计算机需要虚拟化功能才能使用此功能。
以管理员身份打开 PowerShell 并运行:
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
重新启动计算机,以完成 WSL 安装并更新到 WSL 2。
步骤 4 - 下载 Linux 内核更新包
Linux 内核更新包会安装最新版本的 WSL 2 Linux 内核,以便在 Windows 操作系统映像中运行 WSL。 (若要运行 Microsoft Store 中的 WSL 并更频繁地推送更新,请使用 wsl.exe --install
或 wsl.exe --update
。)
-
下载最新包:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
-
运行上一步中下载的更新包。 (双击以运行 - 系统将提示你提供提升的权限,选择“是”以批准此安装。)
安装完成后,请继续执行下一步 - 在安装新的 Linux 分发时,将 WSL 2 设置为默认版本。 (如果希望将新的 Linux 安装设置为 WSL 1,请跳过此步骤。)
步骤 5 - 将 WSL 2 设置为默认版本
打开 PowerShell,然后在安装新的 Linux 发行版时运行以下命令,将 WSL 2 设置为默认版本:
wsl --set-default-version 2
步骤 6 - 安装所选的 Linux 分发
方式1:打开 Microsoft Store,并选择你偏好的 Linux 分发版。链接
方式2:虽然 WSL 本身可用,但你可能需要直接下载 Linux 发行版。如果 Microsoft Store 应用不可用,可使用 链接来下载并手动安装 Linux 发行版。
如果愿意,你也可通过命令行下载首选的发行版,可将 PowerShell 与 Invoke-WebRequest cmdlet 一起使用。 例如,下载 Ubuntu 20.04:
Invoke-WebRequest -Uri https://aka.ms/wslubuntu2004 -OutFile Ubuntu.appx -UseBasicParsing
如果下载需要很长时间,请通过设置
$ProgressPreference = 'SilentlyContinue'
来关闭进度栏。还可以选择使用 curl 命令行实用程序来下载。 使用 curl 下载 Ubuntu 20.04:
curl.exe -L -o ubuntu-2004.appx https://aka.ms/wslubuntu2004
下载了发行版后,导航到包含下载内容的文件夹,并在该目录中运行以下命令,其中 app-name
是 Linux 发行版 .appx 文件的名称。
Add-AppxPackage .\app_name.appx
Appx 包下载完成后,可以通过双击 appx 文件开始运行新发行版。 (命令
wsl -l
不会在此步骤完成之前显示发行版已安装)。
步骤 7 - 安装 Windows 终端(可选)
Windows 终端安装 | Microsoft Learn
检查wsl版本
wsl --set-version Ubuntu-22.04 2
wsl -l -v