WSL2的安装详细过程(转载)

2023-11-11

这部分记录了如何安装wsl,以及如何升级到wsl2的心酸历程。

文章目录

版本要求
    升级windows
WSL的安装
    升级到WSL2
    安装linux分发版
排查安装问题
    相关链接
记录所踩的坑

版本要求

安装wsl2对系统版本有硬性的要求:

运行 Windows 10(已更新到版本 2004 的内部版本 19041 或更高版本)。
通过按 Windows 徽标键 + R,检查你的 Windows 版本,然后键入 winver,选择“确定”。 如果内部版本低于 19041,请更新到最新的 Windows 版本。

升级windows

如果版本达到了要求,则跳过此步骤。

Win+S 搜索预览体验计划

加入预览体验计划,获取更新版本。

进行windows更新

然后就是漫长的等待过程,无论是下载还是安装的过程都很漫长。
WSL的安装

使用管理员权限打开powershell

启用“适用于 Linux 的 Windows 子系统”可选功能

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

1

这时候wsl其实已经启用了,重启就可以了,但还要更新到wsl2,就在后面一起重启了。

升级到WSL2

启用“虚拟机平台”可选组件

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

1

重启电脑。
重新管理员身份打开powershell,用下面的命令将wsl2设置为默认。

wsl --set-default-version 2

1

出现上面这行就是好了,如果有问题请参考后文中遇到的问题及解决办法。
安装linux分发版

选择一个你喜欢的就可以了,任君挑选。

打开 Microsoft Store,并选择你偏好的 Linux 分发版。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hdAPmeE7-1595520346717)(https://docs.microsoft.com/zh-cn/windows/wsl/media/store.png)]

单击以下链接会打开每个分发版的 Microsoft Store 页面:
    Ubuntu 16.04 LTS
    Ubuntu 18.04 LTS
    Ubuntu 20.04 LTS
    openSUSE Leap 15.1
    SUSE Linux Enterprise Server 12 SP5
    SUSE Linux Enterprise Server 15 SP1
    Kali Linux
    Debian GNU/Linux
    Fedora Remix for WSL
    Pengwin
    Pengwin Enterprise
    Alpine WSL

在分发版的页面中,选择“获取”。

Microsoft Store 中的 Linux 分发版

安心等待片刻,就安装好了,这时你点击开始,就可以在最近安装看见你安装好的分发版了。

这个地方最好重启一次电脑。否则可能会报错

初次启动它会进行一个初始化的过程,需要等待一段时间。完成之后会让你设置账号和密码。

Windows 控制台中的 Ubuntu 解包
排查安装问题

下面是相关的错误和建议的修复措施。 有关其他常见错误及其解决方法,请参阅 WSL 故障排除页。

安装失败并出现错误 0x80070003
    适用于 Linux 的 Windows 子系统只能在系统驱动器(通常是 C: 驱动器)中运行。 请确保分发版存储在系统驱动器上:
    打开“设置”->“存储”->“更多存储设置: 更改新内容的保存位置” 用于在 C: 驱动器中安装应用的系统设置屏幕截图
WslRegisterDistribution 失败并出现错误 0x8007019e
    未启用“适用于 Linux 的 Windows 子系统”可选组件:
    打开“控制面板” -> “程序和功能” -> “打开或关闭 Windows 功能”-> 选中“适用于 Linux 的 Windows 子系统”,或使用本文开头所述的 PowerShell cmdlet。
安装失败,出现错误 0x80070003 或错误 0x80370102
    请确保在计算机的 BIOS 内已启用虚拟化。 有关如何执行此操作的说明因计算机而异,并且很可能在 CPU 相关选项下。
尝试升级时出错:Invalid command line option: wsl --set-version Ubuntu 2
    请确保已启用适用于 Linux 的 Windows 子系统,并且你使用的是 Windows 内部版本 19041 或更高版本。 若要启用 WSL,请在 PowerShell 提示符下以具有管理员权限的身份运行此命令:Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux。 可在此处找到完整的 WSL 安装说明。
由于虚拟磁盘系统的某个限制,无法完成所请求的操作。虚拟硬盘文件必须是解压缩的且未加密的,并且不能是稀疏的。
    请检查 WSL GitHub 主题 #4103,其中跟踪了此问题以提供更新的信息。
无法将词语“wsl”识别为 cmdlet、函数、脚本文件或可运行程序的名称。
    请确保已安装“适用于 Linux 的 Windows 子系统”可选组件。 此外,如果你使用的是 ARM64 设备,并从 PowerShell 运行此命令,则会收到此错误。 请改为从 PowerShell Core 或从命令提示符运行 wsl.exe。

相关链接

常见问题

WSL 2 常见问题解答

疑难解答
记录所踩的坑

上面的问题和解决办法,是官方的手册给的,下面说记录下安装的心酸历程,如果上面没找到你的问题,可以看看我的经历是不是能给你点帮助:

首先是windows版本,我一直保持着最新的版本,想当然的以为版本足够,查了各种方法也装不上wsl2,后来在一个大佬的笔记里发现要打开预览版本更新。

之后就是安装WSL 2遇到了 requires an update to its kernel component. For information please visit https://aka.ms/wsl2kernel的问题,然后就下载了最新版本的内核。

然后又遇到内核无法安装的问题,这时我已经要炸了,冷静下来想起了解决之前问题时候尝试装过一次内核,随后找到应用卸载的界面卸载了之前装的内核,安装新内核成功。

之后也成功的切换到了wsl2,但是从应用商店下载的Ubuntu20,04第一次打开加载报错,不信邪的我切换回了wsl1,再打开Ubuntu成功运行,这时候我心态已经有点崩了,搞来搞去wsl2还是不能用。

我在应用商店下载了Ubuntu18.04,切换回了wsl2重新安装,还是失败,看了下报错0xc03a001a,找到一个大佬的解答说是因为开了压缩内容以便节省磁盘空间的原因,首先确定你的一些或者所有的文件夹右上角是否都有两个相对的蓝色箭头,然后找到路径:C:\Users\user name\AppData\Local\Packages\CanonicalGroupLimited.xxxx (xxx为你所下载的对应Linux发行版)这个文件夹,若它确实是右上角带有两个相对箭头,那么:

右键 -> 属性 -> 常规 -> 高级 -> 取消勾选 压缩内容以便节省磁盘空间 这一项 -> 确定
再次启动所安装的 Linux 发行版应该就可正常使用。

随后我以为终于可以解决了,然而并没有。还是报错,具体是什么忘记了,也没查到答案。最后问题还是自己解决的。我灵机一动,既然wsl1环境可以正常安装,那我是不是在1环境下安装,再转换到2环境下呢?最后问题完美解决。

wsl --set-version Ubuntu-20.04 2

1

终于等到你,还好我没放弃!

原文链接:https://blog.csdn.net/huiruwei1020/article/details/107551106?utm_medium=distribute.pc_feed.none-task-blog-personrec_tag-5.nonecase&depth_1-utm_source=distribute.pc_feed.none-task-blog-personrec_tag-5.nonecase&request_id=5f209e2a9cc79f6252ce650a

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WSL2的安装详细过程(转载) 的相关文章

  • 同心聚合力,开局谋发展——云孚科技参加哈工大青企联首届年会

    3月2日 云孚科技CEO张文斌先生受邀参加了历时3天的哈尔滨工业大学青年企业家联合会 以下称青企联 首届年会 并参与龙江行活动 哈工大党委常务副书记安实出席青企联年会并致辞 哈工大原副校长郭斌出席青企联年会并参加了赴香坊区调研座谈会 张文斌
  • Python 中的json模块dumps参数详解

    1 什么是JSON 维基百科中的定义 JSON JavaScript Object Notation JavaScript对象表示法 是一种由道格拉斯 克罗克福特构想和设计 轻量级的资料交换语言 该语言以易于让人阅读的文字为基础 用来传输由
  • 如何使用百度的GPU来跑自己的项目

    请先阅读如下两篇文章 并先读完我的文章再决定你是否要动手安装 因为有很多坑 白嫖百度GPU TeslaV100笔记 在 AI Studio 上使用 tensorflow 和 pytorch 的方法 亲测可用 免费使用谷歌GPU 这里谷歌是需
  • easyui field 获取对象子属性的值

    我们从服务器获取的数据格式如下 total 10 rows orderId 4 payment 1 paymentType 1 postFee 1 status 2 createTime 1510029825000 updateTime 1
  • 深入解析IT专业分类、方向及就业前景:高考毕业生如何选择适合自己的IT专业?重点探索近年来人工智能专业发展及人才需求

    目录 一 IT专业的就业前景和发展趋势 二 了解IT专业的分类和方向 三 你对本专业的看法和感想 四 本专业对人能力素养的要求 五 建议和思考 其它资料下载 当今社会 信息技术行业以其迅猛的发展和无限的潜力成为了吸引无数年轻人的热门选择 特
  • leetcode学习项目

    https leetcode cn com explore learn card data structure binary tree leetcode上专项介绍供学习树 https leetcode cn com explore lear
  • Linux中创建sftp用户并限制目录权限

    注意两点 一是禁止该用户通过ssh登录 二是不需要创建家目录 家目录简单来说 就是在 home下的用户命令 默认每个用户在 home中都是有与用户名一样的文件夹 创建组 groupadd sftp 创建用户 useradd g sftp s
  • 作为计算机专业学生,最应该学习的课程前五位是什么?【知乎】

    http www zhihu com question 19628851 answer 100293 对于目前排在首位的兵哥哥的答案 不敢苟同 本人软件工程专业 关于计算机专业和软件工程专业 实际上还是大相径庭的 远不是别人所说的软硬件的偏
  • Economic Difficulties【DP】【Codeforces 1263 F】

    Codeforces Round 603 Div 2 F 题意 给你两棵树 结点分别是1 A与1 B 然后给了N台设备 并且A树和B树的叶子结点都是链接设备的 问的是 我们最多可以割几条边使得每个设备都能链接A树或者B树上任意的一个 1 号
  • 检测鼠标位置是否有UI

    示例 using System using System Collections Generic using UnityEngine using UnityEngine EventSystems using UnityEngine UI p
  • 【编译原理】课程一:编译原理入门

    目录 1 为什么要学习编译原理 2 什么是编译原理 3 编译与计算机程序设计语言的关系 3 1 程序设计语言的转换方式 3 2 编译的转换过程 3 3 编译器在语言处理系统中的位置 3 4 编译系统的结构 3 4 1 词法分析 扫描 3 4
  • unity3D僵尸模型和场景带动作,unity游戏素材

    unity3D僵尸模型和场景带动作 详情如下动态图所示 资源链接在文末 点我下载资源 https download csdn net download weixin 43474701 55001671
  • IMX6ULL驱动学习--Linux自带LED驱动

    Linux自带LED驱动 Linux内核LED驱动 内核使能LED驱动 LED驱动源码分析 设备树节点编写 设备树LED节点 设备操作 Linux内核LED驱动 Linux 内核集成了LED驱动 采用platform框架 我们只需要在编译内
  • Centos7-安装keepalived

    1 到keepalived官网下载 Keepalived for Linux 2 使用xftp上传到 usr local packages目录下 3 解压上传的tar gz压缩文件 cd usr local packages tar zxv
  • 西安电子科技大学计算智能导论公茂果老师课程所有PPT

    西安电子科技大学计算智能导论公茂果老师课程所有PPT http pan baidu com s 1hqst8pe 随着信息技术的发展 计算的观念越来越显示其在各个领域的威力 从计算的角度审视世界 认为从物理世界 生命过程直到人类智能都是可计
  • sqlserver ssms 安装失败拒绝访问(0x80070005)

    今天安装了SQL Server Management Studio 安装的时候提示 安装失败 拒绝访问 0x80070005 果断将电脑重启 重启之后重新安装还是不行 解决方法 我们将杀毒软件关闭 我的是360 然后我们再安装一下SQL S
  • linux 基础(一)

    1 Linux常见发行版 Linux发行版有三大主流分支 Debian Slackware Redhat 包含的主要发行版分别如下 Debian Ubuntu Linux mint Knopix Slackware S u S E SLES
  • 机器学习之单变量线性回归

    1 线性回归基础概念 回归模型 regression model 数据集 包含feature 输入变量 和与之对应的target 输出变量 训练集 training set 输入数据 x feature or input feature 输
  • esp8266一键安装arduino_ESP8266如何获取B站粉丝数、关注数和播放量?

    硬件 ESP8266 12板 0 96 IIC驱动OLED一个 杜邦线4根 1 获取API接口 打开B站个人中心 按下F12 刷新页面 搜索这个词 https api bilibili com x relation stat vmid 40
  • 进程、线程、协程

    一 名词概念 1 什么是进程 what is process 进程是操作系统提供的抽象概念 是系统进行资源分配和调度的基本单位 是操作系统结构的基础 程序是指令 数据及其组织形式的描述 进程是程序的实体 程序本身是没有生命周期的 它只是存在

随机推荐

  • 系统稳定性方法论 - 降发生

    上一篇 lt 系统稳定性方法论 序篇 gt 中提到了系统稳定性的4大抓手 今天就先说说其中的第一个 降发生 何为 降发生 降发生指的是 从设计阶段开始 开发阶段 测试阶段 上线前的准备阶段 上线阶段到最后上线后的回归测试阶段 在这整个过程中
  • 微信云托管-填坑之旅

    微信云开发开始收费了 一个月20块钱 贼贵 用不起 而按用量收费 资源还能复用的兄弟产品微信云托管还像还行 所以就有了一场填坑旅行 windows10下安装docker之坑 在本地开发 需要使用docker 但是下载 安装docker后 大
  • less查看日志常用命令

    在Linux系统中 使用less命令可以查看日志文件 下面是一些常用的less命令 less filename 查看指定文件的内容 pattern 搜索包含指定模式的文本 可以使用向上或向下箭头浏览搜索结果 n 在搜索结果中跳转到下一个匹配
  • 组合数--深度优先算法(DFS)的简单实现

    找出从自然数 1 2 n 0
  • Github上堪称最全的面试题库(Java岗)到底有多香

    前言 最近金三银四想必大家或多或少都有去面试 面试前也都会有刷刷题的习惯 不过网上有太多的Java面试题库了 大部分都潦潦草草 没有知识储备的小伙伴一般很难看下去 看完后也不会留下印象 最近也是有粉丝私信我说求一份 图文并茂 易于理解 代码
  • linux终端基本操作命令

    Linux系统一切皆为文件 所有命令都是小写 使用命令的格式 命令名 操作内容 1 man 其他命令名 命令介绍 主要看name部分 2 ls ls 文件夹名或者说路径 列出指定路径下的内容 ls a 列出当前目录下所有内容 包括点开头的和
  • QModbusServer

    目录 数据 1 setData 重载一 重载二 2 writeData 3 Data 重载一 重载二 4 readData 数据 1 setData 重载一 将数据写入Modbus服务器 Modbus服务器有四个表 A表 每个表有一个唯一的
  • 5G/NR 学习笔记: 波束赋形 / beam 管理

    What beam 是对于整列天线电磁波传播的一种样式 一个天线的时候 电磁波的辐射方向是360度传播的 但是一个天线阵列可以实现电磁波单方向传播 天线个数越多 电磁波传播方向越集中 https www rcrwireless com 20
  • 微服务:gateway的使用,和解决跨域问题,用户认证与网关整合

    1 网关介绍 API网关出现的原因是微服务架构的出现 不同的微服务一般会有不同的网络地址 而外部客户端可能需要调用多个服务的接口才能完成一个业务需求 如果让客户端直接与各个微服务通信 会有以下的问题 1 客户端会多次请求不同的微服务 增加了
  • JDK、JRE、JVM三者之间的关系

    jdk java development kit java开发工具包 jre java runtime environment java运行时环境 jvm java virtual machine java虚拟机 jdk环境配置 jdk环境
  • MAPREDUCE的JOB提交流程

    在hadoop1 0版本以前我们的Mapreduce是被当作资源调度和计算框架来使用的 成为了hadoop运行生态圈的瓶颈 所以在hadoop2 0版本以上引入了yarn的概念 使Mapreduce完全成为分布式计算框架 而Yarn成为了分
  • jquery ajax url中有中文,后端乱码的解决方法.txt

    参考 https zhidao baidu com question 2057437468670456147 html url类似 http localhost 8080 floorsNodes 风管 json 方法 在jquery aja
  • HTML标签的分类

    HTML的标签 一 分类 1 排版标签 2 标题标签 3 段落标签 4 水平线标签 5 换行标签 6 文本格式标签 7 标签属性 8 图像标签 二 应用 1 排版标签 与css搭配使用 显示网页结构的标签 是网页布局中的常用标签 2 标题标
  • 验证码拦不住机器人了!谷歌AI已能精准识别模糊文字,GPT-4则装瞎求人帮忙

    丰色 发自 凹非寺量子位 公众号 QbitAI 最烦登网站时各种奇奇怪怪 甚至变态 的验证码了 现在 有一个好消息和一个坏消息 好消息就是 AI可以帮你代劳这件事了 不信你瞧 以下是三张识别难度依次递增的真实案例 而这些是一个名为 Pix2
  • 华退学博士王垠:离开是为了获得力量后再回来

    清华退学博士王垠 离开是为了获得力量后再回来 附万言退学书 只提供一种模具生产 标准化的人 而忽视 教育的多样性 的中国教育界是可悲的 异端王垠用现身说法打破了教育界 沉默的螺旋 文 张洋 王垠出名了 这是迟早的事 但这一次 他的出名更多是
  • MySQL LOAD DATA INFILE - 加载没有主键的文件实战

    首先告诉大家关于 MySQL LOAD DATA INFILE 加载没有主键的文件 是可以操作的 接下来就来实战一把 表imagecode结构可以看到有3列 其中id是自增列 drop table imagecode create tabl
  • ztree异步加载

    1 配置好参数 var setting ztreeSetting view showIcon false 前面文件夹显示状态 data key name MC 数据结构的属性由name改成MC async enable true url u
  • 【NVM】node多个版本管理工具安装步骤以及使用

    1 什么是nvm nvm是一个管理nodejs版本的工具 在实际的开发中 有些项目的开发依赖需要不同版本的nodejs运行环境 此时我们就需要使用nvm来管理nodejs版本 2 安装步骤 2 1 下载nvm https github co
  • linux文件赋予用户权限,Linux 给用户赋予操作权限

    chown Rkeesail keesail local赋予local目录给keesailchmod760 local赋予local目录读写权这个目chmod777文件夹名称 可以把文件夹设置成所有用户都有完全的权限 不过更改系统文件夹下的
  • WSL2的安装详细过程(转载)

    这部分记录了如何安装wsl 以及如何升级到wsl2的心酸历程 文章目录 版本要求 升级windows WSL的安装 升级到WSL2 安装linux分发版 排查安装问题 相关链接 记录所踩的坑 版本要求 安装wsl2对系统版本有硬性的要求 运