WSL(Windows Subsystem for Linux)入门

news2025/5/9 18:10:15

目录

  • 1.简介
  • 2.安装与配置
  • 3.常用命令
  • 4.进阶使用
    • 4.1 文件系统交互
    • 4.2 网络互通
    • 4.3 配置代理
    • 4.4 运行 GUI 程序
    • 4.5 Docker 集成

1.简介

WSL 是 Windows 系统内置的 Linux 兼容层,允许直接在 Windows 中运行 Linux 命令行工具和应用程序,无需虚拟机或双系统。

WSL 1:早期版本,通过翻译层兼容 Linux 系统调用,文件系统性能较低,但启动快。

WSL 2:基于轻量级虚拟机(Hyper-V),支持完整 Linux 内核,文件系统性能接近原生,推荐使用。

2.安装与配置

  • 步骤 1:启用 WSL 功能
    wsl --install
    此命令自动安装 WSL 2 内核和默认发行版(如 Ubuntu)。

  • 步骤 2:手动指定发行版
    安装其他发行版(如 Ubuntu 22.04):
    wsl --install -d Ubuntu-22.04

  • 步骤 3:设置默认 WSL 版本
    wsl --set-default-version 2

3.常用命令

在这里插入图片描述

4.进阶使用

4.1 文件系统交互

从 Windows 访问 Linux 文件:
路径格式:\wslKaTeX parse error: Undefined control sequence: \< at position 1: \̲<̲发行版名称>\(如 \\wsl\Ubuntu-22.04\home\user)。

从 Linux 访问 Windows 文件:
挂载在 /mnt/ 目录下(如 /mnt/c/Users)。

4.2 网络互通

Windows 访问 WSL 服务:
WSL 2 的 IP 地址可通过 ip addr show eth0 查看。

WSL 访问 Windows 服务:
使用 hostname -I 获取 Windows 主机 IP(通常为 172.x.x.x)。

4.3 配置代理

在 WSL 中继承 Windows 代理设置:

# 获取 Windows 主机 IP
export HOST_IP=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}')
# 设置代理(假设 Windows 代理端口为 7890)
export http_proxy="http://$HOST_IP:7890"
export https_proxy="http://$HOST_IP:7890"

4.4 运行 GUI 程序

WSL 2 支持 Linux GUI 应用(需 Windows 11 或手动配置):

# 安装图形工具(如 Firefox)
sudo apt install firefox
# 启动 GUI 应用(需先安装 X Server,如 VcXsrv)
export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2}'):0.0
firefox

4.5 Docker 集成

在 WSL 2 中直接使用 Docker:

安装 Docker Desktop for Windows,并启用 WSL 2 集成:
Docker Desktop → Settings → Resources → WSL Integration → 勾选对应发行版。

在 WSL 中验证:

docker run hello-world

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2371685.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python项目73:自动化文件备份系统1.0(tkinter)

主要功能说明&#xff1a; 1.界面组件&#xff1a;源文件夹和目标文件夹选择&#xff08;带浏览按钮&#xff09;&#xff0c;备份间隔时间设置&#xff08;分钟&#xff09;&#xff0c;立即备份按钮&#xff0c;自动备份切换按钮&#xff0c;状态栏显示备份状态。 2.进度条显…

C++:扫雷游戏

一.扫雷游戏项目设计 1.文件结构设计 首先我们要先定义三个文件 ①test.c //文件中写游戏的测试逻辑 ②game.c //文件中写游戏中函数的实现等 ③game.h //文件中写游戏需要的数据类型和函数声明等 2.扫雷游戏的主体结构 使⽤控制台实现经典的扫雷游戏 •游戏可以通过菜单…

使用xlwings将excel表中将无规律的文本型数字批量转化成真正的数字

之前我写了一篇文章excel表中将无规律的文本型数字批量转化成真正的数字-CSDN博客 是使用excel自带的操作&#xff0c;相对繁琐。 今天使用xlwings操作&#xff0c;表格如下&#xff08;有真正的数字&#xff0c;也有文本型数字&#xff0c;混在在一起&#xff09;&#xff1…

文件包含 任意文件读取

文件处理漏洞--文件包含 - wizard骑士 - 博客园 1&#xff0c;什么是文件包含 程序开发人员一般会吧重复使用的函数写道单个文件中&#xff0c;需要使用某个函数时直接调用此文件&#xff0c;无需再次编写&#xff0c;文件调用的过程就是文件包含&#xff0c;所以将包含的文件…

缓存套餐-01.Spring Cache介绍和常用注解

一.Spring Cache 要使用直接导入坐标即可。 如何选择底层的缓存实现呢&#xff1f;只要导入对应的缓存坐标即可。如果要使用redis作为缓存实现&#xff0c;那么只需要导入redis的maven坐标。 二.常用注解 Cacheable&#xff1a;不光往缓存中写缓存数据&#xff0c;而且会从缓…

C++类与对象—下:夯实面向对象编程的阶梯

9. 赋值运算符重载 9.1 运算符重载 在 C 里&#xff0c;运算符重载能够让自定义类型的对象像内置类型那样使用运算符&#xff0c;这极大地提升了代码的可读性与可维护性。运算符重载本质上是一种特殊的函数&#xff0c;其函数名是 operator 加上要重载的运算符。 下面是运算…

Linux中安装mysql8,转载及注意事项

一、先前往官网下载mysql8 下载地址&#xff1a; https://dev.mysql.com/downloads/选择Linux 二、删除Linux中的mysql&#xff08;如果有的话&#xff09;&#xff0c;上传安装包 1、先查看mysql是否存在&#xff0c;命令如下&#xff1a; rpm -qa|grep -i mysql如果使用这…

SpringBoot的汽车商城后台管理系统源码开发实现

概述 汽车商城后台管理系统专为汽车4S店和经销商设计&#xff0c;提供全面的汽车管理系统解决方案。 主要内容 1. 核心功能模块 系统提供以下主要功能&#xff1a; ​​销售管理​​&#xff1a;记录销售信息&#xff0c;跟踪交易进度​​客户管理​​&#xff1a;维护客户…

DeepSeek实战--手搓实现Agent

1.背景 要学习AI agent&#xff0c;只会用agent 框架&#xff0c;还不够&#xff0c;一旦框架出现问题&#xff0c;没法快速的排查出问题。 学习就应该“知其然&#xff0c;更应该知其所以然” &#xff0c;今天我们就用编码的方式实现一个简单的agent 。我们模拟一套AI学生评…

线性代数——行列式⭐

目录 一、行列式的定义⭐ 1-1、三阶行列式练习 1-2、下面介绍下三角行列式、上三角行列式、对角行列式 ​编辑 二、行列式的性质 2-1、性质1&#xff0c;2&#xff0c;3&#xff0c;4&#xff0c;5&#xff0c;6 ​编辑 2-2、性质7 2- 3、拉普拉斯定理、克莱姆法则 三…

iPhone手机连接WiFi异常解决方法

iPhone手机连接WiFi异常解决方法 一、问题现象二、iPhone连不上可能的原因三、基础排查与快速修复第一步:重启大法第二步:忽略网络,重新认证第三步:关闭“私有无线局域网地址”第四步:修改DNS服务器第五步:还原网络设置四、路由器端排查及设置关闭MAC地址过滤或添加到白名…

学习设计模式《八》——原型模式

一、基础概念 原型模式的本质是【克隆生成对象】&#xff1b; 原型模式的定义&#xff1a;用原型实例指定创建对象的种类&#xff0c;并通过拷贝这些原型创建新的对象 。 原型模式的功能&#xff1a; 1、通过克隆来创建新的对象实例&#xff1b; 2、为克隆出来的新对象实例复制…

疗愈服务预约小程序源码介绍

基于ThinkPHP、FastAdmin和UniApp开发的疗愈服务预约小程序源码&#xff0c;这款小程序在功能设计和用户体验上都表现出色&#xff0c;为疗愈行业提供了一种全新的服务模式。 该小程序源码采用了ThinkPHP作为后端框架&#xff0c;保证了系统的稳定性和高效性。同时&#xff0c…

【随笔】Google学术:but your computer or network may be sending automated queries.

文章目录 一、问题复述二、问题原因三、解决 前提&#xff1a;你的xxx是自己做的&#xff0c;你自己可以管理&#xff0c;而不是用的那些劣质✈场。 一、问题复述 &#x1f7e2;如下图所示&#xff1a;可以打开谷歌学术&#xff0c;但是一搜索就是这个界面。 二、问题原因 …

长事务:数据库中的“隐形炸弹“——金仓数据库运维避坑指南

引言&#xff1a;凌晨三点的告警 "张工&#xff01;生产库又告警了&#xff01;"凌晨三点的电话铃声总是格外刺耳。运维团队发现数据库频繁进入单用户模式&#xff0c;排查发现某核心表的年龄值&#xff08;Age&#xff09;已突破20亿大关。经过一夜奋战&#xff0c…

ubuntu nobel + qt5.15.2 设置qss语法识别正确

问题展示 解决步骤 首选项里面的高亮怎么编辑选择都没用。如果已经有generic-highlighter和css.xml&#xff0c;直接修改css.xml文件最直接&#xff01; 在generic-highlighter目录下找到css.xml文件&#xff0c;位置是&#xff1a;/opt/Qt/Tools/QtCreator/share/qtcreator/…

Unity-Socket通信实例详解

今天我们来讲解socket通信。 首先我们需要知道什么是socket通信&#xff1a; Socket本质上就是一个个进程之间网络通信的基础&#xff0c;每一个Socket由IP端口组成&#xff0c;熟悉计网的同学应该知道IP主要是应用于IP协议而端口主要应用于TCP协议&#xff0c;这也证明了Sock…

MATLAB仿真定点数转浮点数(对比VIVADO定点转浮点)

MATLAB仿真定点数转浮点数 定点数可设置位宽&#xff0c;小数位宽&#xff1b;浮点数是单精度浮点数 对比VIVADO定点转浮点 目录 前言 一、定点数 二、浮点数 三、定点数转浮点数 四、函数代码 总结 前言 在FPGA上实现算法时&#xff0c;相比MATLAB实现往往需要更长的开发…

【计算机网络】Cookie、Session、Token之间有什么区别?

大家在日常使用浏览器时可能会遇到&#xff1a;是否清理Cookie&#xff1f;这个问题。 那么什么是Cookie呢&#xff1f;与此相关的还有Session、Token这些。这两个又是什么呢&#xff1f; 本文将对这三个进行讲解区分&#xff0c;如果对小伙伴有帮助的话&#xff0c;也请点赞、…

SpringCloud服务拆分:Nacos服务注册中心 + LoadBalancer服务负载均衡使用

SpringCloud中Nacos服务注册中心 LoadBalancer服务负载均衡使用 前言Nacos工作流程nacos安装docker安装window安装 运行nacos微服务集成nacos高级特性1.服务集群配置方法效果图模拟服务实例宕机 2.权重配置3.环境隔离 如何启动集群节点本地启动多个节点方法 LoadBalancer集成L…