翻译自 Joey Sneddon 2020年10月30日的文章《How to Install WSL 2 on Windows 10》 [1]

如果您想在最新的 Windows 版本中尝试经过改进的 Windows 子系统 Linux 2 (即 WSL 2) [2],要怎么做呢?我们在本文中介绍了安装它所需要做的所有事情。

WSL 2 是微软早在 2017 年推出的 WSL 的原始版本的重大升级。WSL 2 不仅仅是版本的升级。它更快、更通用,并且使用真正的 Linux 内核。未来的 Linux 内核更新甚至会以 Windows 10 软件更新的形式发布——想想看,这有点疯狂!

微软创建 WSL 2 的目的是为了提高性能。最好的方法是什么?添加完整的系统调用兼容性,即以真正的 Linux 内核为核心。

“添加 WSL 2 为新架构,为 WSL 团队提供了一个更好的平台来提供一些特性,使 WSL 成为在 Windows 中运行 Linux 环境的一种令人惊叹的方式。” 微软表示

微软还计划让用户在 Windows 10 上运行桌面 Linux 应用程序,并使用 GPU 加强的任务,因此这种疯狂尚没有减弱的迹象。它还使得用单条命令安装 WSL 成为可能。

目前,除非您使用的是最新的内部版本,否则 WSL 2 的设置工作需要一点点的努力——但是,为了在 Windows 中调用和指挥一个完整的 Linux 系统,难道不值得吗?

在 Windows 10 上 安装 WSL 2

必要条件

要在 Windows 10 上安装 WSL 2,您需要以下东西:

  • Windows 10 2020年5月(2004) 版, Windows 10 2019年5月(1903) 版,或者 Windows 10 2019年11月(1909) 版
  • 一台支持 Hyper-V 虚拟化的计算机

Windows 10 2020年5月更新已于 2020年5月发布(显然),但并非每个设备都能立即升级。要查看您的计算机上是否有 Windows 10 2020年5月更新,请转至“设置” > “更新和安全性” > “Windows 更新”。

在 8 月,微软将 WSL 2 向后移植到 Windows 10 的较早版本。版本号为 1903 或 1909 的任何人也可以安装WSL 2 —— 但必须首先安装 Windows 更新 KB4566116

高级(和心急)的 Windows 用户可以强制安装 Windows 10 2020年5月更新,但请记住,如果按照这种方法操作,您可能会遭遇缺失驱动程序、GUI 故障或其他硬件故障。

从技术上来讲,您可以在 Windows 10 build 18917 或更高版本的“内部”版本上安装 WSL 2。我不太熟悉“内部”版本系统是如何工作的,所以请注意,本文的其余部分都基于在稳定版的 Windows 上使用该功能。

为了运行 WSL 2,您的计算机还需要支持 Hyper-V 虚拟化。您可以检查您的计算机确认对 Hyper-V 的支持 [3]

如果您不能同时满足这两个必要条件,则无法安装或启用 WSL 2——但可以使用 WSL 1。

在 Windows 10 上安装 WSL 2 的过程如下:

  1. 启用 WSL 2
  2. 启用“虚拟机平台”
  3. 设置 WSL 2 为默认值
  4. 安装 Linux 发行版

我将使用 PowerShell 应用程序依次介绍每个步骤,您需要以管理员身份运行此应用程序。您可以在 Windows “开始” 菜单中找到 PowerShell。

注意:也可以使用 GUI 安装 WSL 1,但使用命令行安装的速度要快得多,而且由于 WSL 是 CLI 工具,这也比较讲得通!

第 1 步,启用 WSL

不管您想要使用哪个版本的 WSL,都首先需要启用它。为此,请以管理员身份打开 PowerShell 工具并运行以下命令。小心不要在命令中输入错误或遗漏任何字符:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

如果只想使用 WSL 1,您可以跳到第 4 步。

第 2 步,启用“虚拟机平台”

WSL 2 需要启用 Windows 10 的 “虚拟机平台” 特性。它独立于 Hyper-V,并提供了一些在 Linux 的 Windows 子系统新版本中可用的更有趣的平台集成。

要在 Windows 10(2004)上启用虚拟机平台,请以管理员身份打开 PowerShell 并运行:

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

要在 Windows 10(1903,1909)上启用虚拟机平台,请以管理员身份打开 PowerShell 并运行:

Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -NoRestart

为了确保所有相关部件都整齐到位,您应该在此时重启系统,否则可能会发现事情没按预期进行。

第 3 步,设置 WSL 2 为默认值

以管理员身份打开 PowerShell,然后运行以下命令以将 WSL 2 设置为 WSL 的默认版本:

wsl --set-default-version 2

如果需要,您可以(随时)将发行版配置为以 WSL 1 模式运行。

第 4 步,安装一个 Linux 发行版

有了 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”,然后单击“获取”按钮:

Ubuntu 20.04 LTS on the Microsoft Store [4]

当您在 Microsoft Store 中时,我强烈建议您也安装开源的 Windows Terminal 应用程序。该工具旨在为您提供最佳的 WSL 体验:

Windows Terminal on the Microsoft Store [5]

第 5 步,使用 WSL 2

当您安装 Ubuntu(或其他 Linux 发行版)时,快捷方式已添加到 Windows “开始”菜单中。使用它可以“打开” Ubuntu(或您选择的任何发行版)。第一次运行发行版时,速度似乎有点慢。这是预料之中的;发行版必须解压缩其所有内容——只是不要中断这个过程。

还将提示您设置用于发行版的用户名和密码。尝试挑选一些您不会忘记的字符。

将 WSL 1 上的 Ubuntu 转换到 WSL 2

如果您使用 WSL 1,则可以将现有的 WSL 1 安装升级到 WSL 2。要将现有的 WSL 1 发行版转换到 WSL 2,请在 PowerShell 中运行以下命令,例如:

wsl.exe --set-version Ubuntu 2

使用时,您应将命令中的 “Ubuntu” 替换为您在 WSL 1 上安装运行的对应发行版的名称。

译者补充

可以在 PowerShell 中运行下面命令显示所有发行版的详细信息:

wsl --list --verbose

命令 wsl --set-version 可更改指定分发版的版本,其用法为:

wsl --set-version <分发版名称> <版本号>

例如:

wsl --set-version Ubuntu-20.04 2

如果本指南对您有用,请在评论中告诉我!

作者 : Joey Sneddon

译者 : 技术译民

出品 : 技术译站

链接 : 英文原文


  1. https://www.omgubuntu.co.uk/how-to-install-wsl2-on-windows-10 How to Install WSL 2 on Windows 10

  2. https://docs.microsoft.com/zh-cn/windows/wsl/wsl2-index WSL 2

  3. https://www.zdnet.com/article/windows-10-tip-find-out-if-your-pc-can-run-hyper-v/ Find out if your PC can run Hyper-V

  4. https://www.microsoft.com/store/productId/9N6SVWS3RX71 Ubuntu 20.04 LTS on the Microsoft Store

  5. https://www.microsoft.com/store/productId/9N0DX20HK701 Windows Terminal on the Microsoft Store

如何在 Windows 10 上安装 WSL 2的更多相关文章

  1. 如何在Windows 10上运行Docker和Kubernetes?

    如何在Windows 10上运行Docker和Kubernetes? 在Windows上学习Docker和Kubernetes,开始的时候会让你觉得无从下手.最起码安装好这些软件都不是一件容易的事情. ...

  2. Redis进阶实践之三如何在Windows系统上安装安装Redis(转载)

    Redis进阶实践之三如何在Windows系统上安装安装Redis 一.Redis的简介 Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括 ...

  3. 在Windows 10上安装Oracle 11g数据库出现的问题及解决

    在Windows 10上安装Oracle 11g数据库,并且很多次出现过:当安装的进度条进行到快要结束的时候弹出一个提示框.如下: [Java(TM)2 Platform Standard Editi ...

  4. Windows 10 上安装 3D Studio Max 2016 报错的解决办法

    在 Windows 10 上安装 3D Stuido Max 2016 报错,无法正常安装,查看日志是 VC 运行时安装错误,经过分析发现在 Windows 10 上已经有这些运行时并且版本比安装包中 ...

  5. 在Windows 10 上安装使用binwalk

    Windows 10 推出的WSL 功能可以协助我们直接使用binwalk 分析Windows 内的文件 文章更新时间:2020年3月11日 一.WSL 准备 1.打开控制面板→程序和功能→启动或关闭 ...

  6. Redis进阶实践之三如何在Windows系统上安装安装Redis

    一.Redis的简介        Redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合 ...

  7. 在 Windows 10 上安装 Coq 库 Mathematical Components

    初学 Coq 时看的是 Mathematical Components 这本书,它自带了一个 Coq 的库,这是它的安装教程 这个库的安装要用到 OCaml Package Manager (OPAM ...

  8. Windows上安装配置SSH教程(2)——在Windows XP和Windows 10上安装并配置OpenSSH for Windows

    知识点汇总:http://www.cnblogs.com/feipeng8848/p/8559803.html ------------------------ 安装方式有3种: (1)Windows ...

  9. 如何在windows server上安装 Windows评估和部署工具包

    此文是<.NET内存宝典>一书的售后服务系列文章之一. 在<.NET内存宝典>一书(目前我还在翻译本书,预计年底出版)的第3章 “内存测量”里的“Windows性能工具包”一节 ...

随机推荐

  1. [web安全原理分析]-文件上传漏洞基础

    简介 前端JS过滤绕过 待更新... 文件名过滤绕过 待更新 Content-type过滤绕过 Content-Type用于定义网络文件的类型和网页编码,用来告诉文件接收方以什么形式.什么编码读取这个 ...

  2. 这些Servlet知识你一定要知道,金九银十大厂面试官都爱问

    前言 Servlet是服务器端的Java应用程序,可以生产动态Web页面.透过JSP执行过程可以知道JSP最终被编译成一个.class文件,查看该文件对应的Java类,发现该Java类继承自org.a ...

  3. 面试阿里,腾讯90%会被问到的zookeeper,把这篇文章看完就够了。

    Zookeeper概述 zookeeper高容错数据一致性协议(CP)的分布式小文件系统,提供类似于文件系统的目录方式的数据存储. 全局数据一致性:每个server保存一份相同的数据副本,client ...

  4. 使用IDM批量抓取音效素材下载

    IDM下载器的站点抓取功能,能够抓取网站上的图片.音频.视频.PDF.压缩包等等文件.更重要的是,能够实现批量抓取操作,省时省力.今天就来看一下,如何用IDM巧妙的批量抓取音效素材. 1.进入音效合辑 ...

  5. 用MathType怎么把分数打出来

    分数是生活中最常见的数,作为大学生学习高数概率论更是离不开分数.分数是指整体的一部分,或更一般地,任何数量相等的部分.分数是一个整数a和一个正整数b的不等于整数的比. 当在日常用语中说话时,分数描述了 ...

  6. 「CSP-S 2019」括号树

    [题目描述] 传送门 [题解] 是时候讨论一下我在考场上是怎么将这道题写挂的了 初看这道题毫无思路,先看看部分分吧 一条链的情况?设k[i]表示前i个括号的方案数 显然\(k[i]=k[i-1]+\) ...

  7. OpenCV计算机视觉学习(12)——图像量化处理&图像采样处理(K-Means聚类量化,局部马赛克处理)

    如果需要处理的原图及代码,请移步小编的GitHub地址 传送门:请点击我 如果点击有误:https://github.com/LeBron-Jian/ComputerVisionPractice 准备 ...

  8. houdini 鱼眼相机

    http://mattebb.com/weblog/houdini-fisheye-camera/ 这个网站是有提供一个相机shader的,,如图是方形的,国内的用户,比较多是做球幕的小伙伴,圆形就行 ...

  9. 自动化运维工具之Puppet变量、正则表达式、流程控制、类和模板

    前文我们了解了puppet的file.exec.cron.notify这四种核心资源类型的使用以及资源见定义通知/订阅关系,回顾请参考https://www.cnblogs.com/qiuhom-18 ...

  10. 浅尝 Elastic Stack (一) Elasticsearch、Kibana、Beats 安装

    Elastic Stack 包括 Elasticsearch.Kibana.Beats 和 Logstash,也称为 ELK Stack.能够安全可靠地获取任何来源.任何格式的数据,然后实时地对数据进 ...