
一、 什么是 WSL?
WSL (Windows Subsystem for Linux) 是微软开发的一项功能,它允许开发者在 Windows 操作系统上直接运行原生的 Linux 环境(包括命令行工具、实用程序和应用程序),而无需传统虚拟机或双系统的开销。
WSL 1 vs WSL 2
目前主流使用的是 WSL 2。
- WSL 1:通过翻译 Linux 系统调用到 Windows 系统调用来实现,性能尚可,但兼容性不完全。
- WSL 2:使用轻量级 Hyper-V 虚拟机架构,运行真正的 Linux 内核,提供了完整的系统调用兼容性和极高的文件系统性能。本教程均以 WSL 2 为标准。
二、 安装 WSL
微软在较新的 Windows 10 和 Windows 11 中极大地简化了安装过程。
1. 系统要求
- Windows 10 版本 2004 及更高版本(内部版本 19041 及更高版本)
- Windows 11
2. 一键安装(推荐)
-
右键点击“开始”菜单,选择 Windows PowerShell (管理员) 或 Windows 终端 (管理员)。
-
输入以下命令并按回车:
wsl --install说明:这个命令会启用所需的可选组件,下载最新的 Linux 内核,将 WSL 2 设置为默认值,并安装默认的 Linux 发行版(通常是 Ubuntu)。
-
安装完成后,重启你的电脑。
3. 初始化你的 Linux
重启后,会自动弹出一个命令提示符窗口,显示 Ubuntu 正在安装。
完成后,系统会提示你创建一个 UNIX 用户名和密码。
(注:输入密码时屏幕上不会显示字符,这是正常的 Linux 安全机制,输入完毕按回车即可)。
三、 WSL 基础使用与文件互通
WSL 最强大的地方在于 Windows 和 Linux 之间的无缝融合。
1. 启动 WSL
有几种常用的方法可以进入你的 Linux 环境:
- 在开始菜单中搜索 "Ubuntu" 并打开。
- 在 PowerShell 或 CMD 中输入
wsl并回车。 - (推荐)使用 Windows Terminal (Windows 终端),在下拉菜单中直接选择 Ubuntu 打开标签页。
2. 基础 Linux 命令尝鲜
进入 WSL 后,你就可以像在真正的 Linux 系统中一样使用包管理器更新系统:
# 更新软件包列表
sudo apt update
# 升级已安装的软件包
sudo apt upgrade
3. 文件系统的“互相串门”
这是日常使用中最频繁的场景:
-
在 Linux 中访问 Windows 文件:
Windows 的盘符被挂载在 Linux 的/mnt目录下。例如,想访问 Windows 的 C 盘:cd /mnt/c -
在 Windows 中访问 Linux 文件:
打开 Windows 资源管理器,在地址栏输入:\\wsl$你就可以看到像网络驱动器一样的 Linux 文件系统了。
四、 进阶:打造完美的开发环境
WSL 是为开发者量身定制的,结合以下工具能发挥最大威力。
1. 搭配 Windows Terminal
如果你还没有安装 Windows Terminal,强烈建议去微软商店下载。它支持多标签页、自定义主题,并且会自动检测并添加你安装的 WSL 发行版。
2. 搭配 Visual Studio Code (VS Code) 极速开发
VS Code 对 WSL 提供了堪称完美的官方支持:
-
在 Windows 系统中安装 VS Code。
-
在 VS Code 扩展商店中搜索并安装 "WSL" 扩展(由 Microsoft 发布)。
-
在 WSL 终端中,导航到你的项目目录,输入:
code .(注意 code 后面有一个空格和一个点)
-
这会在 Windows 弹出 VS Code 窗口,但其底层的终端、运行环境、编译器全都是 Linux 环境!你可以享受 Windows 的 UI 体验,同时使用 Linux 的内核编译代码。
3. 运行 Linux 图形界面应用 (WSLg)
在 Windows 11 和较新的 Windows 10 中,WSL 自带了 GUI 支持 (WSLg)。
你只需在 Linux 终端中安装图形化软件并运行它。例如安装一个 Linux 浏览器的命令:
sudo apt install gedit
gedit
Linux 的文本编辑器界面会像原生的 Windows 程序一样弹出来!
五、 常用 WSL 管理命令速查手册
在 Windows 的 PowerShell 或 CMD 中运行以下命令来管理你的 WSL:
| 命令 | 作用说明 |
|---|---|
wsl -l -v | 查看已安装的 Linux 发行版列表及其运行状态和 WSL 版本。 |
wsl --update | 更新 WSL 的 Linux 内核到最新版本。 |
wsl --shutdown | 非常有用! 彻底关闭所有正在运行的 Linux 发行版和 WSL 2 轻量级虚拟机。当 WSL 占用内存过高或卡死时使用。 |
wsl -d <发行版名称> | 启动指定的发行版(例如:wsl -d Debian)。 |
wsl --set-default <名称> | 设置默认启动的发行版。 |
wsl --install -d <名称> | 安装其他的 Linux 发行版(先用 wsl --list --online 查看可用列表)。 |
六、 常见问题 (FAQ)
Q: 为什么我的 WSL 占用了很多内存(VMMEM 进程)?
A: WSL 2 使用动态内存分配,最高默认可占用系统 50% 的内存。如果觉得占用过多,可以创建一个 .wslconfig 文件来限制它的最大内存使用量。不用的时候,使用 wsl --shutdown 命令可以立刻释放内存。
Q: 我可以安装多个不同的 Linux 吗?
A: 完全可以。你可以同时安装 Ubuntu、Debian、Kali 等,它们互不干扰,你可以随时在它们之间切换。