【dl】【WSL2】如何获得“Winux”?Windows 上的 Linux 子系统 —— 比虚拟机更好的选择

准备工作

第一步:确认CPU虚拟化

打开任务管理器------性能,在cpu一栏找"虚拟化",确认其已开启。一般大部分cpu都是默认开启的。没开启的请自行前往bios修改。

第二步:开启两个Windows功能

在任务栏搜索 Windows功能。开启"适用于Linux的Windows子系统" "虚拟机平台"这两个功能,点击确定后会提示重启。

安装和使用

安装WSL与Linux发行版

以管理员身份运行cmd(或者powershell),输入

bash 复制代码
wsl --install

不指定版本的话默认下的Ubuntu某一个LTS版本。

如果指定版本(这里指定22.04 一般做dl用这个版本最稳定)的话则输入

bash 复制代码
wsl --install -d Ubuntu-22.04

如果身处国内网络或者没挂梯子,建议在最后加上--web-download

另外可以通过以下这个命令查看wsl可以下载哪些linux发行版

bash 复制代码
wsl --list --online

接着等待安装,安装好之后还会弹出一个引导界面,先不用管。

另一边,cmd窗口会提示输入用户名和密码(linux的密码输入无明式显示)

wsl对用户名有一些要求

只包含小写字母、数字和下划线

以字母开头

长度在1到32个字符之间


出现到这一步就安装完毕了。安装的版本是 Ubuntu 22.04.5 LTS。

查看

显示当前机器上所有下载的linux子系统

bash 复制代码
wsl --list -v

可以看到刚刚安装的子系统名字叫 Ubuntu-22.04

STATE Running 代表正在运行,Stopped 未开机.

前面有个*号代表是当前默认的子系统,如果有多个子系统也可以通过以下这个命令修改你的默认子系统。(NAME换成你想换的子系统的名字)

bash 复制代码
wsl --set-default NAME

启动

如何启动子系统?

win11 在终端的下拉界面可以看到几个版本。找到Ubuntu点击即开机,

如果用的是老版本的命令提示符窗口,那么输入

bash 复制代码
wsl -d Ubuntu-22.04

输入pwd 还可以看到当前工作目录

输入 exit 即可退出

卸载

bash 复制代码
wsl --unregister NAME

导出、导入与备份

导出

bash 复制代码
wsl export NAME FILENAME.tar 生成tar文件的地址
# 比如说 wsl export Ubuntu-22.04 ubuntu.tar C:\temp\ubuntu.tar

之后你将在目标地址看到一个FILENAME.tar文件,如果不加地址的话就默认生成在当前工作文件夹。

导入

假设说我现在要把一个tar文件导入到一个新的地址。

bash 复制代码
wsl --import NAME 新的地址 tar文件所在地址
# 比如说 wsl --import Ubuntu-22.04 D:\wsl\ubuntu-22.04 C:\temp\ubuntu.tar

转移

假设说我现在要把安装在c盘的Ubuntu-22.04转移到D盘,一般的流程如下

  • 导出 wsl export Ubuntu-22.04 ubuntu.tar C:\temp\ubuntu.tar
  • 注销 wsl --unregister Ubuntu-22.04
  • 导入 wsl --import Ubuntu-22.04 D:\wsl\ubuntu-22.04 C:\temp\ubuntu.tar
  • 启动检测 wsl -d Ubuntu-22.04

因为安装的时候默认都是装在c盘下,所以说如果c盘容量不够想要转移的话就要通过这个方式。

其他

文件共享

在linux查看windows文件

df,"Disk Free" 的缩写,核心作用是显示文件系统的磁盘容量、已用空间、可用空间等信息

bash 复制代码
df -h

可以看到Windows中的C,D,E盘都是通过挂载的方式挂到子系统的主目录下,这种方式的io性能不好,如果有频繁的io操作建议直接把文件copy过来。

在windows查看linux文件


命令混用

可以在linux命令里混win的命令,在win的命令里混linux的命令......可以说是很逆天了

显卡直通


后续将更新在linux上安装conda环境,在pycharm、cursor等ide接入linux的环境。

相关推荐
Johny_Zhao2 小时前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
阿白的白日梦16 小时前
winget基础管理---更新/修改源为国内源
windows
chlk1232 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑2 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件2 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
碳基沙盒2 天前
OpenClaw 多 Agent 配置实战指南
运维
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI3 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行3 天前
Linux和window共享文件夹
linux