如何在微软Windows 10上安装Linux 2的Windows子系统

313 阅读6分钟

简介

Windows Subsystem for Linux 2,简称WSL,是微软Windows 10上的一个工具,它允许开发人员在Windows上直接运行Linux环境,而不需要任何修改、辅助虚拟机软件或双启动设置。WSL原生地与工作站上的大多数应用程序集成,允许在Windows上获得类似Linux的开发体验。WSL是通过使用微软的内置虚拟化软件Hyper-V来实现的。

在本教程中,你将启用WSL,使用WSL将Ubuntu 20.04安装到你的工作站上,并安装微软新的Windows命令行来访问你的Ubuntu 20.04安装。这将为你提供一个原生于Windows的Linux编程环境。

前提条件

为了跟上本指南,你需要。

  • 安装有Windows 10的个人电脑。Windows Subsystem for Linux 2需要Windows 10 1903版或更高版本的Build 18362或更高。对于ARM64系统,需要2004版或更高版本的Build 19041。低于这个版本的构建将不支持WSL 2。

**警告。**如果你在虚拟机上安装WSL,你将需要向虚拟机公开CPU的虚拟化标志。例如,如果你在Hyper-V中运行的名为_MyWSL_的虚拟化Windows 10上安装WSL,你将需要在虚拟化主机上运行以下命令,而不是在虚拟机上。这是一个Windows命令,所以你需要一个升高的PowerShell提示符来完成这个任务。用Hyper-V中的虚拟机的名字替换MyWSL

Set-VMProcessor -VMName MyWSL -ExposeVirtualizationExtensions $true

如果你不在虚拟机上安装WSL,你可以完全跳过这个警告。

第1步 - 为WSL启用Windows服务

你需要做的第一件事是启用特定的Windows服务,以便你能够运行WSL。这些服务是Windows自带的,但默认情况下是关闭的,直到你决定需要它们。打开 "开始"菜单,搜索PowerShell。你需要右击PowerShell并点击以管理员身份运行**。**

Open Windows PowerShell as an administrator

一旦你这样做了,一个PowerShell窗口就会打开。你将使用Windows_部署镜像服务和管理工具_来启用默认情况下被禁用的可选Windows功能。运行以下命令来启用WSL功能。

PS C:\Windows\system32> dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

一旦你运行该命令,你会看到类似这样的输出。

outputDeployment Image Servicing and Management tool
Version: 10.0.19041.844

Image Version: 10.0.19042.985

Enabling feature(s)
[==========================100.0%==========================]
The operation completed successfully.

接下来,在PowerShell中运行以下命令,启用Windows的虚拟机平台。这通过启用Hyper-V和允许Windows'使用它来安装Linux来启用第二代WSL。

PS C:\Windows\system32> dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

一旦你运行该命令,你会看到类似这样的输出。

outputDeployment Image Servicing and Management tool
Version: 10.0.19041.844

Image Version: 10.0.19042.985

Enabling feature(s)
[==========================100.0%==========================]
The operation completed successfully.

一旦你完成了这些工作,你将需要重新启动Windows以使这些变化发生。

重启完成后,重新登录到你的工作站。

接下来,你需要从微软下载最新的Linux内核更新包并安装它。

要安装这个包,点击下载wsl_update_x64.msi 包到你的本地工作站。一旦下载完毕,运行该程序并按照提示进行安装。

Download the Linux Kernel patch and run

最后,你需要将WSL的默认版本设置为版本2。以管理员身份打开另一个PowerShell终端,运行以下命令。

PS C:\Windows\system32> wsl --set-default-version 2

一旦你运行该命令,你会看到类似这样的输出。

outputFor information on key differences with WSL 2 please visit https://aka.ms/wsl2

现在你已经完成了这些,WSL 2已经启用,并准备在你的工作站上运行。接下来你需要使用WSL 2安装一个基于Linux的操作系统。

第2步 - 使用WSL安装Ubuntu 20.04

现在你已经安装了WSL 2,接下来你需要从微软商店中安装一个Linux发行版。在本教程中,我们将从商店中安装默认的Ubuntu选项,这时刚好是Ubuntu 20.04。有许多不同的选项可供选择,所有这些选项的安装方法与本教程中所述的几乎相同。

打开你的开始菜单,搜索微软商店,并打开它。

Open the Microsoft Store

找到右上角的搜索栏,搜索Linux

Search for Linux

会出现许多选项;选择Ubuntu瓦片来安装最新支持的Ubuntu版本。点击 "获取"按钮,将该应用添加到你的账户。一旦你完成了这项工作,获取按钮将被安装按钮取代。点击该按钮,将Ubuntu安装到你的本地工作站。一旦安装完成,会出现一个启动按钮。点击它来启动Ubuntu。

Select Ubuntu and Install

第一次启动Ubuntu时,它会通知你它正在进行初始配置,可能需要几分钟时间。在这之后,它将提示你一个Linux系统的用户名和密码。这个用户名和密码不必与你的系统相同,但它将是你能够使用sudo ,获得管理权限的必要条件。

Perform Initial Setup of Ubuntu

一旦你创建了你的用户,初始设置就完成了,Ubuntu就可以使用了。

Once initial setup is done Ubuntu is ready to be used

现在你已经安装了Ubuntu,你将安装一个更强大的终端来通过Windows访问Ubuntu。

第3步 - 安装和配置新的Windows命令行

Ubuntu提供了一个默认的终端供使用,但是微软开源并重新实现了他们的终端工具,并将其命名为Windows终端。这个终端比默认的Ubuntu终端支持更多的自定义和易用性选项,所以你会想安装它。

接下来你要在你的工作站上安装这个终端。导航回到微软商店的搜索栏,搜索终端

Search Terminal in the Microsoft Store looking for Windows Terminal

按照你安装Ubuntu的方式安装Windows终端,点击获取安装。通过点击启动或从开始菜单中选择程序来启动终端。

Get and Install the Windows Terminal. Then click launch

默认情况下,Windows终端会打开一个PowerShell控制台。

Default Windows Terminal opens up PowerShell

如果你想打开一个不同的控制台,点击向下的箭头按钮,看看有什么可用。默认情况下,你可以访问PowerShell、Command Prompt和Azure Cloud Shell。当你安装任何WSL Linux时,它也会像Ubuntu安装那样出现在这里。点击Ubuntu将在一个新的标签中打开Ubuntu的外壳。

Windows Terminal supports many different options

如果你想改变终端的一些默认选项,点击向下箭头按钮,选择设置。

Open up settings to change the default to the WSL Ubuntu

接下来,将Ubuntu设置为你的默认控制台。在 "默认配置文件"下选择你的Ubuntu WSL图像,然后点击 "保存"使其成为你的默认选项。

Select Ubuntu as your Default Profile

现在,当你点击**"+"**按钮或打开一个新终端时,Ubuntu将成为默认的外壳。

Clicking the plus or opening the terminal new will give you your WSL Ubuntu shell

现在你已经安装了新的Windows命令行工具,并配置为默认打开你的WSL Ubuntu终端。你现在可以使用WSL在Windows上使用Linux了。

总结

你现在有了一个在Windows中运行的功能齐全的Linux环境。你配置了你的计算机以利用Linux的Windows子系统,并使用WSL安装了一个Ubuntu环境。如果你喜欢不同的Linux发行版,你还可以安装其他的,包括Debian、SUSE或Kali Linux。从这里,你可以安装开发者工具,让一个完整的Linux开发环境在Windows上运行。