玩转wsl2之环境搭建

2023-11-17

  Windows是市场占有率最高的桌面操作系统,很多开发人员还是习惯于在Windows系统中进行开发工作,但服务器领域多采用Linux操作系统,因此开发人员在开发过程中,经常会遇到windows系统开发的软件难以部署到Linux系统的问题。
  WSL(Windows Subsystem for Linux),顾名思义就是在Windows中使用Linux系统,尤其是支持docker的WSL2发布后,完美的解决了开发人员的难题,在Windows系统中能毫无障碍的Linux系统。

  下面我们开始在Windows10 环境中搭建WSL2。

1.系统安装
  WSL2只能运行于Windows 10系统之上,并且要求Windows 10版本为2004版本,内部版本号为19041版本或者更高版本。
  Windows 10的版本可以这样看到: 鼠标右键单击"开始"–>“设置”–>“关于”–>“Windows规格"中的版本号。
  如果Windows 10的版本号低于2004,需要先升级Windows版本。
  1)下载windows 10 2004版本的iso文件;
  2)鼠标右键单击iso文件,选择"装载”;
  3)在打开的目录中,双击"setup.exe"进行升级安装。

2.安装WSL2
2.1 启用"虚拟机平台"
  安装 WSL2之前,必须启用"虚拟机平台"功能。打开"控制面板"–>“程序”–>“程序和功能”–>“启用或关闭Windows功能”–>勾选"虚拟机平台",“确定"后重启系统。
2.2 安装WSL
  打开"控制面板”–>“程序”–>“程序和功能”–>“启用或关闭Windows功能”–>勾选"适用于Linux的Windows子系统","确定"后重启系统。

  系统重启后,鼠标右键点击"开始",打开"Windows PowerShell(管理员)",输入"wsl",验证成功,WSL已经正常安装。

  PS C:\WINDOWS\system32> wsl
  适用于 Linux 的 Windows 子系统没有已安装的分发版。
  可以通过访问 Microsoft Store 来安装分发版:
  https://aka.ms/wslstore  

2.3 升级WSL 2
  WSL安装好之后,默认是WSL 1,需要把默认版本设为WSL 2。

  PS C:\WINDOWS\system32> wsl --set-default-version 2
  WSL 2 需要更新其内核组件。有关信息,请访问 https://aka.ms/wsl2kernel
  有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2

  提示需要更新WSL 2内核组件,访问https://aka.ms/wsl2kernel,并下载安装WSL2 Linux内核更新包。安装完成后,重新设置WSL默认版本为2。

  PS C:\WINDOWS\system32> wsl --set-default-version 2
  有关与 WSL 2 的主要区别的信息,请访问 https://aka.ms/wsl2   

2.4 下载Linux分发版
   打开"Microsoft Store"微软商城,搜索"ubuntu",即可搜索到多个ubuntu的发行版,选择免费的"Ubuntu 18.04 LTS"下载,下载时需要登录微软账号。
   下载完成后,在"Microsoft Store"微软商城直接启动Ubuntu 18.04。
   在"Windows PowerShell(管理员)"中查看WSL的运行情况。

  PS C:\WINDOWS\system32> wsl -l -v
    NAME            STATE           VERSION
  * Ubuntu-18.04    Running         2

   可以看到Ubuntu-18.04已经正常运行。

3.参考资料
   https://docs.microsoft.com/zh-cn/windows/wsl/wsl2-kernel

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

玩转wsl2之环境搭建 的相关文章

随机推荐

  • HashMap在Java里是怎么工作的

    本文翻译自 Coding Geek 原文地址 绝大多数Java开发者都在使用Map类 尤其是HashMap HashMap是一种简单易用且强大的存取数据的方法 但是 有多少人知道HashMap内部是如何工作的 几天前 为了对这个基本的数据结
  • Kubernetes 功能简述

    1 功能 1 1 主要功能 Kubernetes 是一个开源的容器编排平台 它提供了一系列功能来管理和部署容器化应用程序 以下是 Kubernetes 的一些主要功能 容器编排 Kubernetes 可以自动管理容器的部署 扩展和收缩 以满
  • 私有云不是真正的云计算!

    大数据产业创新服务媒体 聚焦数据 改变商业 中国云计算遇到困境 IaaS层面 阿里云 腾讯云等增长乏力 SaaS没有发展起来 反观美国 整个云计算蓬勃发展 AWS 微软云 谷歌云体量更大 增速却不低 SaaS已经高度发达 有不少市值几百亿美
  • 外包三年半,人废了一半

    如果不是女朋友和我提分手 我估计现在还没醒悟 大专生 18年通过校招进入湖南某软件公司 干了3年多的CRUD 今年年初 感觉自己不能够在这样下去了 长时间呆在一个舒适的环境会让一个人堕落 而我已经在一个企业干了3年的CRUD 已经让我变得不
  • C/C++ 课题解答(1)

    随机产生100个字符 a z 数组arrayOfChar 输入字符c 计算字符c在数组中出现的次数和位置 include
  • n的阶乘的两种方式

    n的阶乘的两种方式 递归与非递归 n 1 2 3 n 在n的阶乘中加入运行的时间 可以判断递归与非递归的运行效率 include
  • [vue-router] uncaught error during route navigation

    vue路由在加载组件之前会执行一些逻辑 尤其是生命周期的钩子函数 如果你在以上的钩子函数中 写了自己的逻辑 并报错了 就会触发 vue router uncaught error during route navigation这个错误 原因
  • 基于upload-labs的文件上传漏洞总结

    普通的前端绕过 1 抓包 2 上传jpg等格式的木马文件 3 bp上改回php后缀即可 普通绕过 1 抓包 2 上传jpg等格式的木马文件 3 bp上改后缀名为将后缀改为 php3 php4 php5 phtml等等 大小写绕过 即后缀名改
  • minikube命令

    Basic Commands 0minikube version查看版本 1minikube start启动一个集群 minikube start vm driver none image repository registry cn ha
  • ei计算机投稿 知乎,知乎热议:科研有很水的idea应该发表出来吗?

    原标题 知乎热议 科研有很水的idea应该发表出来吗 科研有很水的idea应该发表出来吗 来源 https www zhihu com question 372648294 小伙伴们 对于只能发EI 水会 OA SCI期刊那种 自己看到都觉
  • k8s基本命令

    k8s命令 https kubernetes io zh docs tutorials kubernetes basics 官网地址 基本命令 查看节点服务器 kubectl get nodes 查看命名空间 kubectl get ns
  • kettle(一)kettle介绍

    kettle介绍及组成 一 kettle 是什么 kettle 是一个ETL工具 ETL Extract Transform Load 数据抽取 转换 装载 kettle 是java编写 绿色无需安装 抽取高效稳定 kettle 主要用来对
  • 【零知ESP8266教程】快速入门5-使用按键来控制你的灯

    上节课 我们已经学习了如何制作一个简易交通灯 那么如何去控制一个LED的亮或者灭呢 此次试验采用按键来控制我们的LED 实现LED的简单控制 一 工具原料 电脑 windows系统 ESP8266开发板 micro usb线 LED灯一个
  • (模板)多项式乘法对任意数取模

    多项式乘法 系数对MOD 1000000007取模 常数巨大 慎用 只要选的K个素数乘积大于MOD MOD N 理论上MOD可以任取 define MOD 1000000007 define K 3 const int m K 100453
  • ajax怎么渲染数据,ajax数据请求渲染

    JQuery引入 html JS function var url https api douban com v2 movie search q E4 B8 89 E4 BD 93 count 1 ajax method get url d
  • 数据结构——第五章树(详细知识点总结)

    知识框架 5 1 树的基本概念 5 1 1 树的定义 树是n n gt 0 个节点的有限集 当n 0时 称为空树 在任意一棵非空树中应满足 有且仅有一个特定的称为根 Root 的结点 当n gt 1时 其余结点可分为m m gt 0 个互不
  • ArcGIS Maritime Server 开发教程(八)ArcGIS Bathymetry 扩展模块

    ArcGIS Maritime Server 开发教程 八 ArcGIS Bathymetry 扩展模块 本章导读 ArcGIS Bathymetry 扩展是 ArcGIS Maritime 解决方案中用于管理水深的重要模块 与传统的离散点
  • 内网穿透FRP详细教程

    简介 frp 是一个专注于内网穿透的高性能的反向代理应用 支持 TCP UDP HTTP HTTPS 等多种协议 可以将内网服务以安全 便捷的方式通过具有公网 IP 节点的中转暴露到公网 通过在具有公网 IP 的节点上部署 frp 服务端
  • 【笔记】构造函数的私有、公有、特权、静态成员

    根据书 javascript DOM高级程序设计 一书整理的笔记 var Myconstuctor function name 特权成员 与私有方法不同 特权方法能够被公开访问 而且还能够访问私有成员 特权方法是指在构造函数的作用域中使用t
  • 玩转wsl2之环境搭建

    Windows是市场占有率最高的桌面操作系统 很多开发人员还是习惯于在Windows系统中进行开发工作 但服务器领域多采用Linux操作系统 因此开发人员在开发过程中 经常会遇到windows系统开发的软件难以部署到Linux系统的问题 W