有时,Windows 还不够。嗯,实际上很多时候,尤其是如果你是一名开发人员。但是双启动计算机或转向虚拟机可能既令人生畏又令人头疼,更不用说旧系统上的地狱了。那么,下一个最好的事情是什么?不是 WSL,正如您所想的那样 — 我将在本文末尾透露下一个最好的解决方案,因此如果您想要更好的解决方案,请务必通读。下一个最好的事情是什么? Linux 的 Windows 子系统。是否需要 WSL 来消除 WSL 错误(“未启用适用于 Linux 可选组件的 Windows 子系统”)或由于其他原因,您需要先启用它。
什么是 WSL?
WSL 是一种混合的、奇怪的半功能方式,使用 PowerShell 在 Windows 中使用一些 Linux 命令和应用程序。自然,整个 Windows 与 Linux 之争 不仅仅是使用WSL来解决,但至少是一个临时的解决方案。它比完整的虚拟机 (VM) 更快,并且产生的开销更少。尽管如此,它既不保证功能也不支持所有命令或应用程序。因此,总而言之,这是一个折衷的措施,只有当您计划进行一些跨平台编码和编译时,我才推荐您这样做。
什么是 WSL2?
当您执行我在此处概述的步骤时,现在会默认安装代号为 WSL2 的全新改进的适用于 Linux 的 Windows 子系统。 WSL2 进行了重大升级,包括对 Docker 和 Kubernetes 容器及其部署的主要支持。当然,现在是微软采取行动让容器更易于使用的时候了。尽管如此,在容器化和代码部署方面,WSL2 也远非完美。
现在,假设您无论如何都需要安装 WSL;这就是本指南的用武之地。我已包含启用 WSL 的所有必要步骤,即使您使用的是较旧的 Windows 10 版本也是如此。因此,请务必遵循说明并通读我承诺的更棒的解决方案。
另请阅读: 如何在 VPS 上安装 Docker(分步指南)
面对错误:“Linux 可选组件的 Windows 子系统未启用”
用户通常发现 WSL 并尝试安装它的主要原因之一是在 Windows 中遇到特定错误消息。当然,在 Windows 中看到错误弹出并不是什么新鲜事,但这个错误比其他错误稍微奇怪一些。错误消息通常类似于“Linux 可选组件的 Windows 子系统未启用”。
消除此错误的唯一方法是启用适用于 Linux 的 Windows 子系统,本文中的说明可帮助您做到这一点。那么,让我们开始吧。
如何为 Linux 启用 Windows 子系统?
要通过某些 Linux 功能增强 Windows,您需要启用适用于 Linux 的 Windows 子系统。您可能还需要这样做来摆脱烦人的“Linux 可选组件的 Windows 子系统未启用”错误)尽管名字听起来很技术性,但安装它非常简单。
基本上,您有两种启用 WSL 的方法:控制面板和 PowerShell。使用控制面板更加简单且用户友好。尽管如此,有时它还是无法完成这项工作(由于某种未知的原因——咳咳微软)。使用 PowerShell 需要在命令行界面中输入一些命令,这对于大多数临时用户来说可能有点吓人。但您将在这里获得所需的所有命令,可以将其复制并粘贴到 PowerShell 中。
但是,在使用任何这些方法之前,您需要了解您的 Windows 版本和内部版本。适用于 Linux 的 Windows 子系统仅适用于 Windows 10 版本 2004 及更高版本。此外,如果您的 Windows 10 的内部版本号在 16215 之前,则需要先启用开发人员模式,然后才能开始启用 WSL。
如何查找您的 Windows 版本?
我们已经奉献了另一个 有关查找所有类型操作系统版本的操作方法文章,所以我会保持简短并切中要点。要查找您的 Windows 10 版本和内部版本号,请按照以下三个简单步骤操作:
第 1 步:按 Windows 键 + R 运行应用程序启动器
![[应用程序启动器]](https://cloudzy.com/wp-content/uploads/image1-4.png)


正如您在上面的屏幕截图中看到的,我的 Windows 10 满足这两个条件(版本 2004,内部版本 > 16215)。如果您的内部版本号小于 16215,您需要 启用开发者模式 第一的。
如何启用开发者模式(适用于 16215 之前的 Windows 10 版本)
开发者模式是一项 Windows 功能,可让您安装未经 Microsoft 批准或仍处于测试阶段的应用程序。启用开发人员模式在其他情况下也可以派上用场,例如当您尝试安装某些未经 Microsoft 批准的第三方应用程序时。要启用开发者模式,您必须遵循以下简单说明:
步骤一: 打开 设置
步骤2: 点击 更新和安全

步骤3: 从左侧菜单中选择 对于开发人员

第4步: 单击开/关切换按钮以打开开发人员模式。

第5步: 关于“使用开发者功能” 对话框中,单击 是的

如何通过控制面板启用 WSL
在 Windows 10 上运行任何 Linux 发行版之前,您首先需要启用 Windows Subsystem for Linux (WSL);您可以按照以下步骤操作:
步骤一: 打开 控制面板
步骤2: 点击 节目
![[Windows 10 控制面板屏幕]](https://cloudzy.com/wp-content/uploads/image8-2.png)
步骤3: 点击 打开或关闭 Windows 功能

第4步: 查找并选择 Linux 的 Windows 子系统 盒子。
![[要打开或关闭的 Windows 功能列表]](https://cloudzy.com/wp-content/uploads/image2-5.png)
第5步: 检查确定按钮
第6步: 等待安装向导完成 Windows 配置。

第7步: 接下来,单击 立即重新启动 在下一个屏幕中

一旦 Windows 重新启动,WSL 就会启用并可供使用。默认情况下,适用于 Linux 的 Windows 子系统运行 Ubuntu 终端。如果您需要其他发行版,可以从 Microsoft Store 下载并使用以下步骤进行安装(或者可以使用 PowerShell 方法):
- 打开 微软商店
- 搜索 Linux 发行版(Ubuntu、Debian、Kali Linux 等)
- 选择您想要的发行版
- 单击 得到 or 安装 按钮
- 单击 发射 按钮
- 为您的发行版创建一个用户名,然后按 进入
- 为您的发行版创建密码并按 进入
- 重复密码并按 进入 确认
现在,您最喜欢的发行版将在 WSL 上启动并运行。
如何通过 PowerShell 安装 WSL?
您还可以使用 PowerShell 为 Linux 启用 Windows 子系统,特别是如果您喜欢使用命令行。
要使用 PowerShell 安装 WSL,请执行以下步骤:
- 打开 开始 并搜索 电源外壳
- 右键单击结果并选择 以管理员身份运行
- 键入以下命令以启用 Linux 子系统并按 进入
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
- 打开 开始 并搜索 电源外壳
- 类型 Y 并按 进入 确认并重新启动计算机。
您的 Windows 10 现在可供您下载。要安装发行版,请按照下列步骤操作:
- 打开 开始 并搜索 电源外壳
- 右键单击结果并选择 以管理员身份运行
- 输入以下命令并按 进入;此命令将选择下载文件夹
cd c:\PATH\TO\DESTINATION-FOLDER
注意:路径写为下载文件路径,例如c:\data
- 输入以下命令下载 Ubuntu 并按 进入
Invoke-WebRequest -Uri https://wsldownload.azureedge.net/Ubuntu_1604.2019.523.0_x64.appx -OutFile Ubuntu.appx -UseBasicParsing
注意:此命令将下载 Ubuntu 16.04。要下载您想要的发行版,只需输入您想要的名称和版本即可。
- 类型 目录 并按 进入 查看安装程序的实际名称
- 键入以下命令并按 进入 安装发行版。在 APP-NAME 部分中,输入发行版的名称
Add-AppxPackage .\APP-NAME.appx
- 打开 开始
- 搜索发行版并单击顶部结果以启动体验
- 为您的发行版创建一个用户名,然后按 进入
- 为您的发行版创建密码并按 进入
- 重复密码并按 进入 确认
更好的解决方案?
如果您安装 WSL 不是因为收到错误(“Linux 可选组件的 Windows 子系统未启用”),而是因为您想使用 Linux,那么我想我可以向您展示更好的解决方案。
正如我在本文开头所说,从 Windows 迁移到 Linux 对于大多数用户来说并不容易。告别熟悉的操作系统并进入 Linux 的陌生世界并不是一个诱人的前景。因此,大多数新手开发人员或网络管理员倾向于要么双启动他们的计算机,这会给你的硬件带来很大的压力,并有破坏一切的风险,要么使用虚拟机。 虚拟机的开销非常高然而,同时运行两个完整的操作系统(这就是运行虚拟机所做的)将意味着两者的性能都会大幅下降。因此,除非您家里有超昂贵的游戏设备,否则您需要找到更好的替代品。
这通常是用户转向适用于 Linux 的 Windows 子系统的部分,正如我所解释的,这就像一种中间措施,让您只使用某些命令和应用程序。如果您不想迁移、双启动或使用虚拟机,这是最好的选择吗?并不真地。
Linux 托管简化
想要更好的方式来托管您的网站和网络应用程序吗?开发新东西?就是不喜欢 Windows?这就是我们拥有 Linux VPS 的原因。
获取您的 Linux VPS我建议购买 Linux VPS 计划并将其用作远程计算机。我们的 Linux VPS 产品是发行版优化的托管解决方案,配备顶级硬件,因此您根本不必担心开销。我们还在全球超过 14 个地点提供 VPS 计划,因此无论您身在何处,都可以与服务器建立低延迟连接。