认识并安装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. Servlet的url-pattern配置

    url匹配规则 1)精确配置 精确匹配是指<servlet-mapping>中配置的值必须与请求中的url完全精确匹配. <servlet-mapping> <servl ...

  2. C#通过LDAP访问目录服务

    C#通过LDAP访问目录服务 本文介绍如何编写C#程序通过LDAP协议访问微软目录服务获得用户在目录中的属性信息.在开始部分先简单句介绍LDAP协议,然后是技术比较及实现部分. 目录 什么是LDAP? ...

  3. 每天坚持一个CSS——社会人

    每天一个CSS-社会人 实现效果 想法 之前看到一篇博客,使用python绘制出了小猪佩奇,所以自己想试一试,采用纯html + CSS绘制出低配版的小猪佩奇. 实现思路 使用上一篇,圆与边框实现.最 ...

  4. HTML5与类有关的扩充

    对于传统HTML而言,HTML5是一个叛逆.所有之前的版本对JavaScript接口的描述都不过三言两语,主要篇幅都用于定义标记,与JavaScript相关的内容一概交由DOM规范去定义. 而HTML ...

  5. js随手笔记-------理解JavaScript碰撞检测算法核心简单实现原理

    碰撞检测在前端游戏,设计拖拽的实用业务等领域的应用场景非常广泛,今天我们就在这里对于前端JavaScript如何实现碰撞检测算法进行一个原理上的探讨,让大家能够明白如何实现碰撞以及碰撞的理念是什么:1 ...

  6. android.content.res.Resources$NotFoundException: String resource ID #0x0报错

    报错:android.content.res.Resources$NotFoundException: String resource ID #0x0 原因:在setText()中使用了int型的参数 ...

  7. 《头号玩家》AI电影调研报告(五)

    4.VR自由行走跑步机 电影中,它可以让玩家朝任意方向无限奔跑并保持在平台最中央,还可以模拟上台阶和走斜坡的情况.而下面这件VR跑步装备,可以让你在游戏世界穿行自如. 奥地利创意公司Cyberith公 ...

  8. QT 如何让release生成的EXE可在他人电脑上运行(尝试了全网的方法后,这应该能帮你解决)

    这两天,迅速上手了QT并用其基于C++编写了一个含UI的小程序 跳过中间的开发阶段 当我兴致满满的要将程序打包时,却是费尽周折,搜尽全网的关于QT的打包教程,最后都不顶用. 后面自己和队友的共同发现, ...

  9. 一起来作画吧「GitHub 热点速览 v.22.14」

    作者:HelloGitHub-小鱼干 又一个现象级.火爆社交媒体的项目--多人作画,把你想要放置的元素添加到某一个画布上,Reddit Place 便有了你的痕迹.在本周特推中 reddit-plac ...

  10. win10设置开机自启动程序

    问题情境:前两天刚刚给自己的win10系统美化了一下,但发现一个问题,每次开机都需要双击启动一个程序,才能达到一个我想要的效果,所以就在思考能不能将这个程序设为开机自启动项呢? 1.首先,找到启动文件 ...