如何在 Windows 10 上安装 WSL 2

翻译自 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

相关链接:

  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 ↩︎

作者 :Joey Sneddon 

译者 :技术译民 
出品 :技术译站(https://ITTranslator.cn/)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/306320.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器学习之超参数调优——超参数调优的方法

超参数调优的方法概述网格搜索随机搜索贝叶斯优化算法概述 对于很多算法工程师来说&#xff0c; 超参数调优是件非常头疼的事。除了根据经验设定所谓的“合 理值”之外&#xff0c; 一般很难找到合理的方法去寻找超参数的最优取值。 而与此同时&#xff0c;超参数对于模型效果…

lnmp无法远程连接mysql_MySQL(一):设置root 可以远程连接MySQL

在mysql在远程主机或虚拟机上时&#xff0c;远程连接mysql数据库一般都使用GUI工具&#xff0c;比如Mac下的Sequel Pro&#xff1b;win和linux下的Sqlyog&#xff1b; 还有大名鼎鼎的Navicat。有人也许会说命令行多好&#xff0c;对着黑黑的屏幕噼里啪啦的一顿敲&#xff0c;屏…

机器学习之模型——保存与加载

机器学习之模型——保存与加载 知识点fit()transform()fit_transform()目的API流程获取数据划分数据集标准化预估器保存模型加载模型得出模型模型评估整体代码知识点 fit() Method calculates the parameters μ and σ and saves them as internal objects. 解释:简单来说,…

GraphQL:打造自己的Directive库

GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时。GraphQL 对你的 API 中的数据提供了一套易于理解的完整描述&#xff0c;使得客户端能够准确地获得它需要的数据&#xff0c;而且没有任何冗余&#xff0c;也让 API 更容易地随着时间推移而演进&#xff0c…

云付认证已通过可以支付吗_海科融通丨刷新支付日常问题【附交易操作步奏】...

01常见问题汇总QPIN秘钥检验出错A&#xff1a;认证时不要频繁点击&#xff0c;点完后等一等系统反应&#xff0c;可联系客服处理。Q报错99&#xff0c;该小商户已入网A&#xff1a;提供商户编号给服务经理处理。Q终端屏幕无法签字A&#xff1a;待机界面&#xff0c;输入#0#&…

机器学习案例——生态系统蒸散速率预测

生态系统蒸散速率预测 问题背景概述数据集、代码、报告下载实验步骤分析一、数据预处理1、 对生态观测数据表和植被数据表进行数据预处理2、将不同站点的多个表进行纵向合并3、进行质量控制及去除异常值二、筛选特征1、画相关性热力图(使用热力图进行相关性分析)2、进行特征选择…

邀请函|WorkShop报名通道开启,来就送礼!

作为互联网行业的年度盛会今年除延续以往的开幕与论坛技术分享外还增设了Work Shop 体验课程&#xff01;参加此次工作坊不仅能近距离和大佬进行互动体验项目开发的快感还能领取大会纪念卫衣、书籍等惊喜好礼是不是很期待&#xff1f;&#xff08;数量有限先到场先得&#xff0…

对象数组参数_【JavaScript 教程】标准库—Array 对象

作者 | 阮一峰1、构造函数Array是 JavaScript 的原生对象&#xff0c;同时也是一个构造函数&#xff0c;可以用它生成新的数组。var arr new Array(2);arr.length // 2arr // [ empty x 2 ]上面代码中&#xff0c;Array构造函数的参数2&#xff0c;表示生成一个两个成员的数组…

机器学习之无监督学习——聚类

机器学习之无监督学习——聚类无监督学习一、基于划分的聚类方法1、基于划分的方法 简介A、概念B、分组C、分组与样本 对应关系D、硬聚类 与 软聚类二、基于层次的聚类方法1、基于层次的聚类方法 概念 :2、基于层次的聚类方法 :A、聚合层次聚类 ( 叶子节点到根节点 )聚合层次聚…

2020 . NET大会日程公布!行程亮点全曝光

|倒计时5天文末有福利答应我看到最后|2020年12月19日由.NET众多社区联合组织主办的2020年中国.NET开发者大会将于苏州盛大开幕时间&#xff1a;2020/12/19-12/20主题&#xff1a;开源、共享、创新地点&#xff1a;苏州人工智能产业园▽本次大会以“开源、共享、创新”为主题&am…

橡皮擦_日本推出改邪归正橡皮擦,看得我头顶一凉

▲▲▲点击查看▲▲▲日本&#xff0c;可以说是文具控的天堂。各种不按套路出牌&#xff0c;又十分合理有趣的文具&#xff0c;真是太多太多。就比如这块「改邪归正橡皮擦」&#xff1a;这么看&#xff0c;你可能看不出到底怎么个改邪归正法&#xff0c;但其实它的创作灵感来自…

机器学习之琐碎知识(代码运行问题)

机器学习之琐碎知识1、python代码中忽略警告2、python在画图时显示中文1、python代码中忽略警告 解决方案&#xff1a; import warnings warnings.filterwarnings("ignore")2、python在画图时显示中文 解决方案&#xff1a; # 支持中文 plt.rcParams[font.sans-s…

三菱四节传送带控制梯形图_一文讲透FX5U PLC程序控制指令及步进梯形图编程

三菱PLC在80年代进入中国市场&#xff0c;已有30多年历史。由于三菱PLC编程易学&#xff0c;功能强大&#xff0c;深受中国用户喜爱。随着时间推移&#xff0c;市场上已经淘汰掉二代产品&#xff0c;关系图如下&#xff1a;说明90年代老型号2000年代老型号低端小型机FX0SFX1S中…

在 ASP.NET Core 中使用多种方式给 Action 传参

ASP.NET Core 是一个跨平台&#xff0c;开源的&#xff0c;轻量级&#xff0c;高性能 并且 高度模块化的web框架。在 ASP.NET Core MVC 中有很多种方式可以给 Action 方法传递参数&#xff0c;比如说&#xff1a;url方式&#xff0c;querystring方式&#xff0c;request header…

机器学习之tensorflow出现的一些问题

机器学习之tensorflow出现的一些问题 1、查看tensorflow版本2、Jupyter Notebook 工作环境配置3、anaconda查看已有环境4、anaconda进入已有的虚拟环境5、查看该环境下的TensorFlow的版本6、查看查看anaconda虚拟环境中的python 版本1、查看tensorflow版本 import tensorflow …

gitlab创建分支上传文件_Gitlab管理和使用基本教程

一、注册并设置Gitlab个人信息(一)注册Gitlab登录Gitlab站点&#xff0c;注册账户&#xff0c;设置基本个人信息。按提示操作即可。(二)配置ssh连接信息1.创建SSH密钥通过下面的命令生成密钥&#xff0c;请将命令中的YOUR_EMAILYOUREMAIL.COM替换为你注册Gitlab时用的Email地址…

WinUI 3 Preview 3 发布了,再一次试试它的性能

1. WinUI 3在微软 Build 2020 开发者大会上&#xff0c;WinUI 团队宣布可公开预览的 WinUI 3 Preview 1&#xff0c;它让开发人员可以在 Win32 中使用 WinUI。最终 XAML 的新功能不再和 Windows SDK 绑定&#xff0c;所有新的 XAML 功能都将作为 WinUI 的一部分发布。作为 OS 的…

机器学习的一般流程

机器学习的一般流程 一、数据采集与标注二、数据探索1、认识数据2、基本统计数据描述三、数据预处理1、数据清洗(1)、缺失值处理(2)、异常值处理(3)、重复值的处理2、数据集成3、数据变换(1)、简单函数变换(2)、规范化(归一化、标准化)(3)、连续属性离散化(4)、属性构造(5)、特…

m苹果放n篮子_egg appple千万别翻译为“鸡蛋苹果”,老外听到会懵圈的

egg很熟悉&#xff0c;apple也很熟悉&#xff0c;可是egg apple就让人一脸懵了&#xff0c;鸡蛋苹果是啥玩意&#xff1f;难道中国人有番茄鸡蛋&#xff0c;而歪果仁喜欢鸡蛋炒苹果&#xff1f;1&#xff1a;egg apple 是什么意思&#xff1f;其实英国人眼中的茄子是 egg apple…

基于.NET Core的简单,跨平台,模块化的电子商务系统-SimplCommerce

SimplCommerce是基于.NET Core的简单&#xff0c;跨平台&#xff0c;模块化的电子商务系统官网&#xff1a;www.simplcommerce.com开源地址&#xff1a;https://github.com/simplcommerce/SimplCommerce高层架构在线演示&#xff08;Azure网站&#xff09;店面&#xff1a;http…