当前位置: 首页 > news >正文

【学习笔记】WSL

WSL

  • 1、 介绍
    •       1.1、概述
    •       1.2、版本
    •       1.3、配置安装
  • 2、 基本
    •       2.1、基本命令

1、 介绍

      1.1、概述

        WSL 是 Windows Subsystem for Linux 的缩写,中文称为 Windows 下的 Linux 子系统。它是微软在 Windows 上提供的一种功能,允许用户在 Windows 系统上原生运行 Linux 二进制可执行文件

特点作用
运行 Linux 环境可以在 Windows 系统中直接运行 Linux 命令行工具和应用程序,避免双系统或虚拟机的复杂配置
文件系统集成WSL 允许用户访问 Windows 和 Linux 的文件系统,支持跨系统文件操作
开发支持开发者可以在 Windows 上使用 Linux 环境进行开发,比如运行 Linux 的开发工具、编译程序等,特别适合需要跨平台开发的场景
轻量级相比虚拟机,WSL 占用更少的资源,并且启动速度更快

      1.2、版本

        微软目前提供了两种版本

WSL1:使用 Windows 内核兼容层来翻译 Linux 系统调用
WSL2:引入了真正的 Linux 内核,通过虚拟化技术运行,提供了更好的性能和兼容性

WSL1WSL2
架构WSL1 是基于一个兼容层,使用 Windows 内核来翻译 Linux 的系统调用(System Call),并且将这些调用映射到 Windows 系统调用上。这种方式使 Linux 应用程序可以在 Windows 系统上运行,但不是完整的 Linux 内核WSL2 引入了一个完整的、精简的虚拟机,并且运行了真正的 Linux 内核。它使用微软开发的轻量化虚拟化技术 Hyper-V 来提供更高的性能和完整的系统调用支持
性能① 对于 Windows 文件系统(NTFS)的访问性能较好,因为它直接通过 Windows 系统进行文件操作
② 对于 Linux 文件系统的访问相对较慢,特别是在需要大量文件操作时表现不佳
① 对于 Linux 文件系统的访问性能大幅提升,因为它在虚拟机中运行了真实的 Linux 文件系统
② 对于 Windows 文件系统的访问相对较慢,因为需要通过网络协议(9P 文件协议)来访问 Windows 文件
兼容性WSL1 支持运行大部分 Linux 命令行工具和应用程序,但由于没有真正的 Linux 内核支持,对于需要复杂系统调用的程序(如 Docker 等容器技术)兼容性较差WSL2 提供了完整的 Linux 内核支持,因此可以运行几乎所有的 Linux 应用程序,包括 Docker、KVM 等需要底层内核支持的工具和服务
启动速度WSL1 启动非常快,因为它没有完整的虚拟机或者内核启动过程WSL2 运行在轻量级虚拟机中,允许用户限制和管理虚拟机的资源(如 CPU、内存等)
虽然 WSL2 启动比 WSL1 稍慢,但由于使用了优化的虚拟机技术,启动速度依然很快,资源开销较小
优点① 启动快,轻量化,适合简单的命令行工具和开发任务
② 对于 Windows 文件系统的访问较快,适合需要频繁操作 Windows 文件的任务
① 完整的 Linux 内核支持,兼容性好,能够运行更多的复杂应用程序和服务
② 对于 Linux 文件系统的操作性能大幅提升,特别适合 Linux 开发者和需要频繁操作 Linux 文件的任务
缺点① 由于没有真正的 Linux 内核,对某些应用程序(如 Docker、KVM 等)不完全兼容
② 对于 Linux 文件系统的访问较慢
① 对于 Windows 文件系统的访问较慢
② 虽然虚拟机启动较快,但相较于 WSL1 依然稍慢

      1.3、配置安装

        ① 启用或关闭Windows功能 → 勾选适用于 Linux 或 Windows 子系统虚拟机平台Hyper-V
        ② 以管理员的身份运行 cmd,执行wsl --install -d Ubuntu

可能出现的错误:WslRegisterDistribution failed with error: 0x800701bc(安装WSL分发时出现的错误,即需要需要手动安装WSL)
解决:手动下载 → next → finish

2、 基本

      2.1、基本命令

命令描述
查看可安装的子系统wsl --list --online
查看已经安装好的子系统的列表wsl --list -v(*表示当前默认的Linux子系统)
设置默认的子系统wsl --set-default <name>
启动子系统wsl -d Ubuntu
退出子系统exit
卸载子系统wsl --unregister <name>
备份wsl --export <name> xxx.tar(会导出到桌面上)
导入子系统wsl --import <new_name> <location> xxx.tar

相关文章:

【学习笔记】WSL

WSL 1、 介绍 1.1、概述 1.2、版本 1.3、配置安装 2、 基本 2.1、基本命令 1、 介绍 1.1、概述 WSL 是 Windows Subsystem for Linux 的缩写&#xff0c;中文称为 Windows 下的 Linux 子系统。它是微软在 Windows 上提供的一种功能&#xff0c;允许用户在 …...

python assert 断言用法

语法&#xff1a; try:assert 条件表达式, "可选的错误消息" except AssertionError as error:print(f"断言失败&#xff1a;{error}")其中&#xff0c; try...except是异常处理语法结构&#xff0c;try可以测试代码块中的错误&#xff0c;并在出现异常时…...

MySQL事务、索引、数据恢复和备份

MySQL事务、索引、数据恢复和备份 1.MySQL的事务处理 事务就是将一组SQL语句放在同一批次内去执行 如果一个SQL语句出错&#xff0c;则该批次内的所有SQL都将被取消执行 MySQL的事务实现方法 : SET AUTOCOMMIT 使用SET语句来改变自动提交模式 SET AUTOCOMMIT 0; # 关…...

什么是chatgpt?国内有哪些类gpt模型?

什么是ChatGPT&#xff1f; “ChatGPT”这个名字越来越多地出现在我们的生活中。简单来说&#xff0c;ChatGPT是OpenAI开发的一种人工智能对话模型。它基于GPT&#xff08;Generative Pre-trained Transformer&#xff0c;生成式预训练变换模型&#xff09;架构&#xff0c;能…...

ISP基本框架及算法介绍 ISP(Image Signal Processor)

ISP基本框架及算法介绍 ISP(Image Signal Processor)&#xff0c;即图像处理&#xff0c;主要作用是对前端图像传感器输出的信号做后期处理&#xff0c;主要功能有线性纠正、噪声去除、坏点去除、内插、白平衡、自动曝光控制等&#xff0c;依赖于ISP才能在不同的光学条件…...

Stable Diffusion 的 ControlNet 主要用途

SD&#xff08;Stable Diffusion&#xff09;中的ControlNet是一种条件生成对抗神经网络&#xff08;Conditional Generative Adversarial Network, CGAN&#xff09;的扩展技术&#xff0c;它允许用户通过额外的输入条件来控制预训练的大模型&#xff08;如Stable Diffusion&a…...

矩阵分析 学习笔记4 内积与Gram矩阵

内积 定义 由于对称&#xff0c;第二变元线性那第一变元也线性了。例如这个&#xff1a;...

iOS 消息机制详解

应用 解决NSTimer、CADisplayLink循环引用。 二者都是基于runloop的定时器&#xff0c;由于处理事件内容不一样&#xff0c;runloop 每运行一次运行耗时就不一样&#xff0c;无法准确的定时触发timer的事件。 NSProxy 与 NSObject 如果继承自NSProxy 直接开始消息转发&…...

深入理解Spring Data JPA与接口编程

目录 1. 什么是Spring Data JPA&#xff1f; 2. 如何使用Spring Data JPA&#xff1f; 3. 示例代码 4. 使用Query注解 5. 拓展知识&#xff1a;接口编程的好处 6. 结论 在软件开发领域&#xff0c;接口&#xff08;Interface&#xff09;是一种定义了方法签名但没有实现的…...

Wireshark学习使用记录

wireshark 是一个非常好用的抓包工具&#xff0c;使用 wireshark 工具抓包分析&#xff0c;是学习网络编程必不可少的一项技能。 原理 Wireshark使用的环境大致分为两种:一种是电脑直连互联网的单机环境&#xff0c;另外一种就是应用比较多的互联网环境&#xff0c;也就是连接…...

OpenCV特征检测(9)检测图像中直线的函数HoughLines()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在二值图像中使用标准 Hough 变换查找直线。 该函数实现了用于直线检测的标准 Hough 变换或标准多尺度 Hough 变换算法。详见 http://homepages…...

力扣 中等 445.两数相加 II

文章目录 题目介绍题解 题目介绍 题解 首先反转两个链表&#xff0c;再调用 2. 两数相加 链接的代码&#xff0c;得到链表&#xff0c;最后将其翻转即可。 class Solution {public ListNode addTwoNumbers(ListNode l1, ListNode l2) {l1 reverseList(l1);l2 reverseList(l…...

华为云徐峰:AI赋能应用现代化,加速软件生产力跃升

2024年9月19日&#xff0c;在华为全联接大会2024的“AI赋能应用现代化&#xff0c;加速软件生产力跃升”论坛上&#xff0c;华为云PaaS服务产品部部长徐峰发表了主题演讲&#xff0c;介绍了未来应用智能化演进趋势&#xff0c;分享了智能化应用的行业实践&#xff0c;并发布了华…...

C发送邮件技巧:如何批量发送个性化邮件?

C发送邮件的高效步骤指南&#xff1f;C语言怎么实现SMTP发邮件&#xff1f; 为了提高邮件营销的效果&#xff0c;掌握C发送邮件的技巧&#xff0c;特别是如何批量发送个性化邮件&#xff0c;显得尤为重要。AokSend将详细介绍C发送邮件的技巧&#xff0c;帮助您在邮件营销中取得…...

基于python+spark的外卖餐饮数据分析系统设计与实现(含论文)-Spark毕业设计选题推荐

博主介绍&#xff1a; 大家好&#xff0c;本人精通Java、Python、C#、C、C编程语言&#xff0c;同时也熟练掌握微信小程序、Php和Android等技术&#xff0c;能够为大家提供全方位的技术支持和交流。 我有丰富的成品Java、Python、C#毕设项目经验&#xff0c;能够为学生提供各类…...

权限维持——Linux

前提 已经提权到管理员权限 一、创建账户 1、创建一个自定义密码的账户 已知&#xff0c;Linux中所有的用户的信息 存储在/etc/passwd这个文件中 。可以利用管理员权限修改这个文件&#xff0c; 添加一个账户 。 利用linux中的密码的编码算法 生成对应密码 &#xff08;不知…...

申请SSL证书闭坑方法

上来先问一个问题&#xff0c;为什么自己不能成立CA机构发SSL证书产品&#xff1f;为什么有的CA机构不能发被信任SSL证书产品&#xff1f; 真正原因是&#xff0c;SSL证书里面的根证书需要提前放入操作系统及浏览器&#xff0c;然而这些浏览器和操作系统的版本很多&#xff0c…...

linux 下域名解析错误

本文参考这里 作者&#xff1a;程序那点事儿 日期&#xff1a;2024/01/31 16:25 ping raw.githubusercontent.com&#xff0c;ping这个域名时&#xff0c;发现返回的是本地ip 原因是&#xff0c;配置了本地网关地址 192.168.xx.1 用命令查看默认网卡的网关&#xff1a;nmcli …...

基于单片机的角度、水位、温度、辅助热源、电机仿真

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 基于51单片机 采用滑动变阻器连接ADC0832数模转换器模拟角度传感器&#xff0c;水位传感器&#xff1b; 采样DS18B20温度传感器检测温度 通过LCD1602显示&#xff0c;第一行显示温度、水位、角度…...

泛函分析精解【1】

文章目录 平方可积函数平方可积函数一、定义二、性质三、公式四、计算五、例子六、例题 平方可积函数在泛函分析一、定义二、性质三、公式四、计算五、例子六、例题 L 2 空间 L_2空间 L2​空间定义性质公式计算例子例题 实变函数与罗曼积分实变函数与Riemann积分的联系实变函数…...

106. 如何禁用牧场主日志的注释收集

Environment 环境 SUSE Rancher Prime - All versions SUSE Rancher Prime - 所有版本 Rancher-logging-105.3.x Procedure 程序 There could be situations where users might want to disable annotation collection with rancher-logging in order to reduce the amount o…...

高效低成本馈电保护电路设计与应用

1. 为什么需要馈电保护电路&#xff1f; 有源天线在通信系统中扮演着重要角色&#xff0c;但实际使用中经常会遇到一些棘手的问题。比如在野外作业时&#xff0c;技术人员可能会频繁插拔天线&#xff1b;或者在长期运行过程中&#xff0c;天线内部电路可能出现故障。这些情况都…...

数据库存储有什么作用

数据库存储就是把数据安全、规范、高效地存起来&#xff0c;方便以后用&#xff0c;核心作用可以分成这几块&#xff1a;1. 持久化保存程序关掉、电脑重启&#xff0c;数据不会丢失不像内存一断电就清空&#xff0c;数据库存在硬盘里长期保存2. 统一管理数据把零散的文件、记录…...

施密特触发器在智能家居中的7个隐藏用法:从空调变频到漏电保护

施密特触发器在智能家居中的7个隐藏用法&#xff1a;从空调变频到漏电保护 智能家居的普及让我们的生活更加便捷&#xff0c;但背后支撑这些设备的电子技术却鲜为人知。施密特触发器作为一种基础的电子元件&#xff0c;在智能家居系统中扮演着关键角色。它不仅能解决信号抖动问…...

小红书自动评论的‘伪需求’与真风险:聊聊RPA工具养号背后的封号逻辑与合规玩法

小红书自动化评论的合规边界&#xff1a;效率与账号安全的博弈术 凌晨三点&#xff0c;某MCN机构运营负责人李然被连续不断的手机提示音惊醒——团队管理的12个小红书达人账号同时收到平台封禁通知&#xff0c;而这一切都源于他们三天前部署的那套"高效互动系统"。这…...

51单片学习ing

现在能够实现LED闪烁了&#xff01;&#xff01; 开心 今天学习了让LED闪烁以及LED流水灯&#xff0c;主要是了解了软件延时计算器这个工具 现在可以更灵活的变换LED的变换速度了&#xff0c;如下&#xff1a; 接下来学习到了c语言里模块化的思想&#xff0c;之前学习c的时候…...

RT-Thread PM组件实战:手把手教你为STM32L4移植低功耗驱动(含RTC时间补偿)

RT-Thread PM组件深度实战&#xff1a;STM32L4低功耗移植与RTC时间补偿全解析 1. 低功耗设计的工程挑战与解决方案 在电池供电的嵌入式设备开发中&#xff0c;我们常常面临一个核心矛盾&#xff1a;如何平衡系统性能与能耗。以智能水表为例&#xff0c;常规模式下MCU工作电流可…...

快速部署SQL Server 2022:Docker容器化实践指南

1. 为什么选择Docker部署SQL Server 2022&#xff1f; 作为开发者&#xff0c;我经历过太多在本地环境安装数据库的噩梦——依赖冲突、版本不兼容、配置复杂&#xff0c;往往折腾半天才能跑起来。直到我开始用Docker部署SQL Server&#xff0c;才发现原来搭建数据库环境可以这么…...

Figma设计稿秒变Vue代码?实测Trae AI的“图像转代码”功能,还原度到底有多高

Figma设计稿秒变Vue代码&#xff1f;实测Trae AI的"图像转代码"功能还原度与实战应用 设计师与前端开发者的协作痛点由来已久。当Figma画布上精美的界面设计需要转化为实际可运行的代码时&#xff0c;往往意味着数小时的像素级测量、CSS编写和响应式调试。这种设计到…...

2027年非全日制国际商务硕士备考规划-暨南大学(珠海研究院)

2027年非全日制国际商务硕士备考规划 一、基本情况与备考总原则 个人时间画像 工作日&#xff1a;19:20到家&#xff0c;19:30-20:00吃饭休息&#xff0c;20:00-23:00为黄金学习时段&#xff08;约2.5-3小时&#xff09;。23:30前入睡&#xff0c;保证7小时睡眠。 周末&#xf…...