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

win wsl2使用

前提

Windows 11(所有版本)
Windows 10 2004+(Build 19041+)
必须开启 CPU 虚拟化(BIOS/UEFI 里开)
家庭版 / 专业版都可以

安装

  1. 以管理员打开终端
    Win+X → 终端 (管理员) / Windows PowerShell (管理员) → 点 “是”
  2. 执行安装命令 powershell
wsl--install

自动做 4 件事:
启用 适用于 Linux 的 Windows 子系统
启用 虚拟机平台(WSL2 必须)
下载安装 WSL2 Linux 内核
安装默认发行版:Ubuntu
自动设 WSL2 为默认版本

  1. 重启电脑
    命令跑完会提示重启 → 立即重启(必须重启)

  2. 首次启动 Ubuntu(设置账号)

可以下载国内的镜像安装

等待解压安装
提示:Enter new UNIX username
输入你要的 Linux 用户名(如 finejade)→ 回车
提示:New password
输入密码(输入不显示,正常输)→ 回车
提示:Retype new password
再输一遍 → 回车

fine111111

安装成功

fine@DESKTOP-PC:~$

如何设置wsl默认系统的系统

先查看本地wsl有哪些系统

*号说明是当前默认系统

wsl--list--verboseNAME STATE VERSION * docker-desktop Stopped2Ubuntu-22.04 Stopped2

更换系统

>wsl --set-default Ubuntu-22.04 操作成功完成。# 重启wsl--shutdown# 再次查看>wsl--list--verboseNAME STATE VERSION * Ubuntu-22.04 Stopped2docker-desktop Stopped2

安装其他需要的软件

例如go环境

/mnt/e/work/golang/gorm对应 win环境的目录E:\work\golang\gorm

fine@DESKTOP-PC:/mnt/e/work/golang/gormsudoaptupdate&&sudoaptinstallgolang-go-y

安全配置(关闭全盘挂载)

  1. 在 WSL 内编辑配置
sudonano/etc/wsl.conf
  1. 粘贴以下内容(禁止自动挂载 Windows 盘)
enabled=false
  1. 保存退出
Ctrl+O → 回车 Ctrl+X
  1. 重启 WSL 生效
    管理员 PowerShell:
wsl--shutdown

再进 WSL:
/mnt/c/mnt/d全部消失
→ Linux 完全隔离,再也碰不到 Windows 系统盘

如果只想访问制定的目录,不想把win里的所有盘都挂着

  1. 添加普通用户

  2. 修改配置文件
    sudo nano /etc/wsl.conf

[boot]systemd=true[user]default=finejade[automount]enabled=falsemountFsTab=true[interop]appendWindowsPath=false

保存退出:
Ctrl+O → 回车
Ctrl+X

  1. 创建挂载目录
mkdir~/work
  1. 编辑文件挂载表
sudonano/etc/fstab
  1. 在最后一行添加(直接复制):
E:\work /home/finejade/work drvx defaults,umask=002200
  1. 重启 WSL 生效
    在 Windows CMD 执行:
wsl--shutdownwsl
  1. 测试!
    现在在 WSL 里直接输入:
cd~/workls

挂载实例

一、确认 E 盘是否已经能访问

打开 WSL(Ubuntu)直接输:

ls/mnt/e

能列出文件 → 已经自动挂载,直接跳到第二步
提示不存在 → 执行下面手动挂载:

sudomkdir-p/mnt/esudomount-tdrvfs E: /mnt/e

再 ls /mnt/e 就能看到 E 盘内容。

二、进入你的代码目录(关键)

假设你 Windows 代码路径是:

E:\projects\mygo

对应 WSL 路径:

/mnt/e/projects/mygo

进入目录:

cd/mnt/e/projects/mygols

现在就在 E 盘代码目录里了。

文件位置(你之前问的重点)

  1. Linux 内部文件(Windows 看不见)
    在虚拟硬盘:
C:\Users\你的用户名\AppData\Local\Packages\CanonicalGroupLimited...\LocalState\ext4.vhdx

→ 你的 ~/a.txt 就在这里面

  1. Windows 访问 Linux 文件(安全)
    资源管理器地址栏输入:
\\wsl$

→ 进入 Ubuntu/home/ 你的用户名
→ 可复制、编辑、删除(安全)
3. 想挂载某个文件夹(不挂全盘)
wsl.conf:

[automount]enabled=trueoptions="metadata,umask=0022"mountFsTab=false[mount]genMounts=false

只手动挂载你指定目录(如 D:\project),不自动挂 C/D/E 全盘

常用 Linux 基础命令(必学)

# 查看当前目录pwd# 列出文件ls# 新建文件toucha.txt# 新建目录mkdirproject# 进入目录cdproject# 编辑文件nanoa.txt# 查看文件cata.txt# 删除文件rma.txt# 更新软件sudoaptupdate&&sudoaptupgrade-y
http://www.jsqmd.com/news/972118/

相关文章:

  • 从内存泄漏到稳定运行:C/C++使用cJSON库必须掌握的3个内存管理技巧
  • STM32F103洗衣机控制仿真工程包:含Proteus电路图、Keil源码与PWM电机驱动实现
  • 3步快速上手Phigros网页模拟器:免费在线音乐游戏体验指南
  • gr-ieee802-11:GNU Radio上的开源IEEE 802.11收发器完全指南
  • 如何去除 Kimi 输出文本中带 *、# 的小技巧,借助 AI 导出鸭优化文档导出,从技术层面根除星号井号冗余符号
  • Kaggle房价预测实战:用PyTorch搭建MLP时,我是如何解决特征爆炸和梯度问题的?
  • 从连接失败到读写自如:UaExpert客户端调试OPC UA服务器的完整避坑指南
  • 电商平台反爬机制深度解析:TLS指纹与浏览器方案突破
  • 项目实训开发日志(一)
  • 告别掉电丢失!用AT24C02 EEPROM给51单片机做个“记忆面包”(附Proteus仿真)
  • 别再手动调格式了!用Jaspersoft Studio 6.2.0搞定PDF报表打印(附数据库连接与字体避坑指南)
  • 告别繁琐操作:autopy-legacy屏幕控制功能让自动化更简单
  • 深入理解ElixirLS架构:前端无关的智能开发服务核心原理
  • Symbol Organizer:让你的Sketch符号库井井有条的终极工具
  • Overleaf新手必看:从编译报错到排版美化,我遇到的6个坑和填坑方法
  • 齐次通解与非齐次特解在控制系统中的意义
  • SpringBoot+Vue校园闲置物品交易平台源码+论文
  • ArcGIS Pro 3.0 实战:三步搞定随机点采样,把栅格数据变成Excel表格
  • LNMP(linux+nginx+mysql+php)和Wordpress部署
  • 别再死记叉乘公式了!用Python的NumPy和SymPy玩转向量运算与反对称矩阵
  • 别只盯着GAN了!聊聊GPR数据增强中‘加噪声’的底层逻辑与工程权衡
  • 序列化与反序列化(一)
  • 告别调参玄学:用WB可视化工具深度复盘我的第一个Kaggle房价预测项目
  • 洗衣机控制系统 FPGA 设计 Verilog Quartus
  • StackGAN-v2架构深度解析:理解堆叠生成对抗网络的秘密
  • STM32F4的Flash读写避坑指南:从扇区选择到数据安全,我的踩坑记录
  • 第二板块:Android 四大组件标准化学理 | 第六篇:四大组件架构总论与 Manifest 规范
  • [从0开始学Java|第二十七天]IO(异常File)
  • Randall-Sundrum膜世界中的紧凑物体构建与稳定性分析
  • 别再手动调格式了!用Jaspersoft Studio 6.2.0搞定PDF报表排版(附常见报错解决)