‌WSL简单使用

‌WSL简单使用

⚠️ 关注朋蛋、码上小明

1 介绍

⚠️ WSL用起来确实比VM和VirtualBox更顺手。

‌WSL(Windows Subsystem for Linux)适用于 Linux 的 Windows 子系统,是 Windows 自带功能,不用装传统虚拟机、不用双系统,就能在 Windows 里面跑 Linux。此外,还有VM、VirtualBox也有同样的功能。

WSL:Windows 自带,轻量跑 Linux,和 Windows 互通方便,主打开发用,隔离弱。

VMware(VM):完整虚拟机,独立系统,快照、USB、图形性能强,适合测试、靶场。

VirtualBox:免费开源虚拟机,独立系统,基础虚拟化够用,性能偏弱。

WSL参考文档

复制代码
https://learn.microsoft.com/en-us/windows/wsl/

2 安装WSL

⚠️注意:​ 命令需在PowerShell执行,中断中输入PowerShell即可进入命令页面。

⚠️ 注意:我的操作系统是Win10。

2.1 WSL安装命令

复制代码
# 启用运行WSL和安装Linux发行版所需的功能,并默认安装Ubuntu,默认安装在C盘
wsl --install

# 开启后一定要关机,重启
# 更新高版本内核
wsl --update

# 上面的方法会比较忙,可以直接到GitHub上下载最新版本直接安装,地址如下
https://github.com/microsoft/WSL/releases

# 高版本wsl支持指定版本和安装目录
# -d 指定版本
# --location Ubuntu的安装目录
# --web-download 下载方式为互联网下载,默认从Microsoft Store下载(容易失败)
# --name 指定实例名称,不是必须,如果需要多个实例时,需要设置
wsl --install -d Ubuntu-22.04 --location D:\wsl\ubuntu2204  --web-download --name ubuntu-test

安装报错,因为国内网络拿不到Github上分发列表(可以过一会再试,因为Github时好时坏,连接上时就可以正常使用了);此时,已经启用WSL成功。

复制代码
请求的操作成功。直到重新启动系统前更改将不会生效。
无法从"https://raw.githubusercontent.com/microsoft/WSL/master/distributions/DistributionInfo.json"中提取列表分发。操作超时
Error code: Wsl/InstallDistro/0x80072ee2

解决方法---离线导入

复制代码
# 在下面地址中找出适合你操作系统的版本,然后手动下载
https://raw.githubusercontent.com/microsoft/WSL/master/distributions/DistributionInfo.json

# 离线导入wsl发行包
wsl --import Ubuntu-22.04 D:\wsl\ubuntu2204 D:\wsl\tmp\Ubuntu2404.wsl

安装结果

2.2 WSL其他命令

复制代码
# 查看版本
wsl --version

# 查看帮助参数
wsl --help

# 查看在线Linux系统版本
# --list可以替换为 -l
wsl --list --online

# 查看已经安装的Linux系统
wsl --list

# 查看实例数量
# --verbose可以替换为-v
wsl --list --verbose
# 同样作用
wsl -l -v

# 启动Linux系统实例
wsl -d Ubuntu-22.04

# 取消注册分发并删除根文件系统
wsl --unregister Ubuntu-22.04

# 停止所有运行的虚拟机
wsl --shutdown

2.3 导入导出命令

⚠️ 假设数据在C盘中;

⚠️ 旧版本中无法直接生成多个相同操作系统的实例,因此需使用下面导入导出的方法

复制代码
# 先关闭wsl
wsl --shutdown

# 导出备份tar
wsl --export Ubuntu-22.04 D:\wsl\tmp\ubuntu-22.04.tar

# 注销C盘里的旧实例
wsl --unregister Ubuntu-22.04

# 导入到D盘
wsl --import Ubuntu-22.04 D:\wsl\Ubuntu2204 D:\wsl\tmp\ubuntu-22.04.tar

2.4 WSL实例和Windows交换数据

直接路径访问

复制代码
# \\wsl$\<发行版名>
\\wsl$\Ubuntu-22.04

直接使用命令

复制代码
# Windows 盘符:/mnt/c/、/mnt/d/
cp /home/test.txt /mnt/d/data/
相关推荐
普通人614 小时前
WebGL与WebGPU入门指南
开发语言·webgl·1024程序员节
猫猫不是喵喵.1 天前
从0到1创建一个微服务项目
java·数据库·微服务·1024程序员节
fish_zzzz5 天前
笔记-论数据结构2
1024程序员节
普通人65 天前
PHP文件读写完全指南
开发语言·php·1024程序员节
Martina_03215 天前
AI生成3D场景从白模换成精模后镜头全偏了?用6步检查单位、枢轴与层级替换
图像处理·人工智能·3d·ai·自然语言处理·材质·1024程序员节
星云_byto7 天前
CSS布局
人工智能·机器学习·目标跟踪·1024程序员节
张小姐的猫9 天前
【MySQL】访问 & 数据流动原理
android·数据库·mysql·adb·1024程序员节
工业HMI实战笔记10 天前
印刷电路板HMI:SMT贴装的元件定位界面
制造·设计规范·设计语言·1024程序员节
Martina_032110 天前
AI生成3D模型一合并网格,材质就串色?用6步检查材质槽、UV与图集重映射
图像处理·人工智能·3d·材质·uv·游戏策划·1024程序员节
橙光成长10 天前
android-ad-cleaner:android免 Root 批量关闭系统开屏与营销推送
android·1024程序员节