认识并安装WSL(基于Windows的Linux子系统)

什么是WSL

WSL(Windows Subsystem for Linux),这是在windows平台运行的linux子系统。也就是说可是不用安装虚拟机的情况下获得相对完整的linux系统体验。

WSL相比于虚拟机(eg:VMware、Virtualbox)

优点

  • 轻量化,最大程度减少了电脑负担并且可以体验接近原生的Linux环境。
  • 可以实现Linux与Windows系统的文件互通。windows文件挂载在wsl的 /mnt 目录下。

缺点

  • IP地址不固定。
  • wsl和windows住在同一个房子里,如果windows系统损伤会直接影响wsl,但是虚拟机会有快照功能。
  • 不是百分百的Linux环境。

WSL版本介绍

  • WSL1:初代版本,WSL1使用翻译层将 linux 系统调用转化成 windows 系统调用,没有使用的 VM,不支持内核程序。更像是一个轻量化Linux模拟器而非虚拟环境。
  • WSL2:WSL2使用了一个轻量级的、无需维护的虚拟机,并在这个虚拟机中运行了一个完整的 linux 内核,可以运行比如Docker等程序。WSL 2 使用一个 VHD 虚拟磁盘文件作为 linux 发行版的根目录,其中使用 ext4文件系统格式,极大提升了IO性能。但是 WSL 2 使用了 Hyper-V,由于兼容性原因不能运行 WSL2和VMWare或VirtualBox(听说VMware&Virtualbox的新版本里解决了此问题,我没测试过。),WSL 1 不存在此问题。

个人建议安装WSL2,体验更接近虚拟机的Linux环境

安装WSL & 更新WSL2内核

声明:WSL在windows10个别较低版本以及Windows以下版本无法安装(大多数Windows10以及所有Windows11电脑都满足安装条件)

安装WSL

1.点击窗口按钮,搜索“启用或关闭Windows功能”并打开:

2.勾选“适用于Linux的Windows子系统”&“虚拟机平台”,点击确定,选择“暂不重启”。

3.点击窗口按钮,搜索“开发者设置”并进入,之后打开“开发人员模式”。

4.重新启动电脑。等待WSL组件的安装完成。

5.安装完成之后可以在文件资源管理器看到WSL子系统的文件目录。

更新WSL2内核

1.下载内核文件:

2.双击安装包根据提示进行安装,之后点击 Finsh 完成安装。

3.鼠标在窗口按钮处点击右键,点击Windows终端(管理员)

之后在打开的终端输入以下命令对WSL进行更新。

wsl --update

再之后输入以下命令将WSL2设为默认版本。

wsl --set-default-version 2

安装Linux发行版

1.打开Microsoft Store(微软商店),搜索Linux,结果中有几种Linux发行版: Ubuntu(22.04、20.04.4、18.04)、Debian、OpenSUSE、Oracle Linux、Kali Linux(黑客Linux系统,慎用!)

小科普

  • Linux发行版=Linux(Kernel)内核+(Free Software)自由软件+Tools(工具)+可完整安装程序
  • 所有的Linux发行版都使用同样的Linux内核(Linux内核网站https://www.kernel.org/),这就相当于同样是汽车,内部的构造、引擎都是基本相同的,但是车的外壳、外观……是不同的。

我个人推荐Debian或者Ubuntu,Debian最纯净,Ubuntu基于Debian并且安装包里工具更多较为省事。(Ubuntu目前安装22.04的最新版本可能会不稳定,推荐安装20.04.4)

2.选中自己喜欢的发行版本,获取、安装即可。(如果由于网络问题造成获取或者安装的失败,那就关闭微软商店重新进入,点击重试,多试几次会成功的)

打开WSL安装的Linux发行版

打开安装完成的Linux,会进入终端(就这个黑色命令行框框),进行初始化:Installing……

之后根据提示注册自己的用户名和密码,完成初始配置,开始使用Linux

对于Windows10用户(安装Windows Terminal)

这个黑色的命令行框框叫做终端,也是使用Linux的界面。

Windows10默认可能是cmd或者powershell,界面不太美观,建议安装Windows Terminal(Windows新款的终端,界面美观,功能强大,自定义程度高。)。直接去微软商店搜索并安装即可。

Windows11已经自带此程序。

安装完成!

结尾

机器人梦航天 致力于分享更多优质的知识和资源,主要关于机器人、计算机。

我希望可以让小白们明白学习的路线和方法,少走弯路。让专业的人能觉得我的分享是有那么一点点参考价值的。

原创内容创作不易,希望关注点赞支持。

认识并安装WSL的更多相关文章

  1. 不使用Store安装WSL

    Windows Store经常会因为各种原因打不开, 这时候我们可以尝试直接下载安装WSL     1. PowerShell里运行下载: PS C:\WINDOWS\system32> Inv ...

  2. Windows Store无法联网时安装WSL

    Windows Store无法联网时安装WSL 1 打开powershell 输入命令: Invoke-WebRequest -Uri https://aka.ms/wsl-ubuntu-1604 - ...

  3. 如何在 Windows 10 上安装 WSL 2

    翻译自 Joey Sneddon 2020年10月30日的文章<How to Install WSL 2 on Windows 10> [1] 如果您想在最新的 Windows 版本中尝试 ...

  4. Win10 手动安装 WSL 并修改默认登录用户为 root

    首先要在"程序和功能"里面开启这个服务 然后重启系统使其生效. 然后打开 PowerShell,输入: Invoke-WebRequest -Uri https://aka.ms/ ...

  5. 关于win10安装wsl子系统Ubuntu图形界面的错误解决

    解决了https://blog.csdn.net/weixin_30834783/article/details/102144314Xserver个人使用的是VcXsrv. 在WSL中配置环境变量DI ...

  6. Bash On Win10 (WSL) 安装 Odoo 开发环境

    前段时间微软发布了Bash On Win10,虽然目前还是Beta阶段,但是一想到再也不用折腾虚拟机上跑odoo了,就忍不住手痒,尝试在WSL上安装了一下odoo,结果比较惊喜,感觉可以抛弃Vitru ...

  7. WSL(Windows Subsystem for Linux)的安装与使用及 mongodb安装

    有关WSL的介绍这里就不做解释了.另外,本文仅适用于win10 build 16215以及之后的版本,之前的版本可参考官方链接. (可使用“winver”命令查看windows版本号) 安装:1.  ...

  8. 关于WSL(Windows上的Linux子系统)的简单介绍及安装

    WSL,Windows Subsystem for Linux,就是之前的Bash on [Ubuntu on] Windows(嗯,微软改名部KPI++),在wsl环境下我们可以运行一些Linux程 ...

  9. Windows Subsystem for Linux(WSL)安装记录

    什么是WSL Windows Subsystem for Linux(简称WSL)是一个为在Windows 10上能够原生运行Linux二进制可执行文件(ELF格式)的兼容层.它是由微软与Canoni ...

随机推荐

  1. 如何在Ubuntu 18.04 LTS上安装和配置MongoDB

    MongoDB是一款非关系型数据库,提供高性能,高可用性和自动扩展企业数据库. MongoDB是一个非关系型数据库,因此您不能使用SQL(结构化查询语言)插入和检索数据,也不会将数据存储在MySQL或 ...

  2. H5 视频播放解决方案

    前两天,美团推出的杨洋H5火爆朋友圈.里面主要的是多段视频播放.暂停.听起来很简单,但是由于腾讯白名单限制,在微信浏览器,qq浏览器,会自动将video标签中非腾讯域名的视频 ,自动全屏,结尾追加视频 ...

  3. zookeeper操作节点代码

    package cn.hbaf.zookeeper_api; import org.apache.curator.RetryPolicy; import org.apache.curator.fram ...

  4. java中自动插入一个默认的构造函数,这到底怎么回事?

    1.2 当没有任何构造函数,java编译器,会插入一个默认的构造函数    见下面的例子: class Line {     double x = 0.02;     double y; } publ ...

  5. java中Number Type Casting(数字类型强转)的用法

    4.5 Number Type Casting(数字类型强转)隐式 casting(from small to big) byte a = 111; int b = a;显式 casting(from ...

  6. mysql在cmd中查询到的汉字乱码问题解决 方法一

    只要执行如上两个 set character_set_connection = gbk; set character_set_results= gbk; 将编码格式转换成gbk即可

  7. 解决vue安装时出现vue --version或vue不是内部命令的问题

    1. 试图全局配置 vue 的环境变量,找到 vue.cmd 的路径,然后进行配置. 问题:在文件搜索中,没有找到 vue.cmd,失败. 1.npm i npm -g 全局 update 了 npm ...

  8. python循环与基本数据类型内置方法

    今天又是充满希望的一天呢 一.python循环 1.wuile与else连用 当while没有被关键'break'主动结束的情况下 正常结束循环体代码之后会执行else的子代码 "" ...

  9. linux部署项目访问mysql问题

    springboot以war包形式传到webapps下面,mysql创建库和表,war包里配置数据源是localhost,然后运行tomcat是没有问题的,可以访问通mysql正常请求服务. ssm以 ...

  10. 论文解读(S^3-CL)《Structural and Semantic Contrastive Learning for Self-supervised Node Representation Learning》

    论文信息 论文标题:Structural and Semantic Contrastive Learning for Self-supervised Node Representation Learn ...