Skip to content

Windows 11 WSL 使用完全指南

写作背景:作为一个从 wsl 在 2016 年布时就关注,不断入坑、弃坑、折腾 Ubuntu、双系统。


爱过、狠过、伤过到再也不想碰它,到如今已经过去将近十个年头。但是由于各种原因,导致又不得不用它,现在可以说 wsl 已经成为最好的 Linux 发行版本之一。


拥有完整的 Linux 终端体验与使用最广的图形桌面 windows,是需要 Linux 开发体验 + windows 使用体验的最终解药。

本文定位:Windows 11 用户从零开始认识、安装、管理、备份与迁移 WSL 的入门指南

围绕以下内容展开:

  • WSL 是什么
  • WSL 和普通 Linux 有什么区别
  • 如何安装 WSL
  • 如何管理 WSL
  • 如何备份、导出与导入 WSL 镜像

1. 为什么要了解 WSL?

1.1 WSL 是什么

简单说明:

WSL,全称 Windows Subsystem for Linux,是 Windows 上运行 Linux 环境的一种方式。

它适合:

  • 学习 Linux 命令
  • 运行 Python、Node.js、Go、Rust 等开发环境
  • 使用 Linux 工具链
  • 在 Windows 上体验接近 Linux 服务器的环境
  • 避免频繁安装虚拟机或双系统

1.2 WSL 适合哪些人

可以面向零基础用户说明:

  • 想学 Linux,但不想重装系统的人
  • 使用 Windows,但开发项目需要 Linux 环境的人
  • 想学习服务器、Docker、命令行的人
  • 需要在 Windows 和 Linux 之间切换工作的人

1.3 WSL 不适合哪些场景

简单提醒:

  • 不适合作为正式生产服务器
  • 不适合完全替代真实 Linux 服务器
  • 不适合需要完整桌面 Linux 体验的用户
  • 不适合完全不了解命令行、只想点鼠标操作的人

2. WSL 和普通 Linux 有什么区别?

核心概念部分

2.1 普通 Linux 是什么

普通 Linux 通常指:

  • 直接安装在电脑上的 Linux 系统
  • 云服务器上的 Linux 系统
  • 虚拟机里的 Linux 系统
  • Docker 容器里的 Linux 环境

它们通常拥有比较完整的 Linux 系统环境。

2.2 WSL 是运行在 Windows 里的 Linux 环境

说明 WSL 不是一台真正独立的 Linux 电脑,而是运行在 Windows 之上的 Linux 子系统。

可以用一句话概括:

WSL 更像是 Windows 给你开了一个 Linux 工作间,而不是把你的电脑变成 Linux 电脑。

2.3 WSL 2 和普通虚拟机的区别

对比项WSL 2普通虚拟机
启动速度相对较慢
资源占用较低较高
和 Windows 互通很方便需要额外配置
Linux 完整度较高,但不是完整服务器更接近真实系统
适合场景开发、学习、命令行工具完整系统测试、桌面 Linux

2.4 WSL 和真实 Linux 服务器的区别

  • WSL 运行在 Windows 上,真实 Linux 服务器独立运行
  • WSL 适合本地开发,服务器适合长期运行服务
  • WSL 的网络、磁盘、systemd、硬件访问方式与服务器可能不同
  • 学 WSL 可以帮助理解 Linux,但不能完全等同于真实服务器

2.5 WSL 的优点和限制

优点:

  • 安装简单
  • 和 Windows 文件互通方便
  • 命令行体验接近 Linux
  • 适合开发环境
  • 可以同时安装多个 Linux 发行版

限制:

  • 不建议作为生产服务器
  • 文件放在 Windows 盘和 Linux 盘性能不同
  • 网络、服务管理和真实 Linux 有差异
  • 有些底层功能、硬件功能可能不完全一致

3. 安装 WSL 前需要了解的基础概念

3.1 什么是 Linux 发行版

解释 Ubuntu、Debian、Kali、openSUSE 的关系。

建议重点推荐:

对初学者来说,优先选择 Ubuntu。

3.2 什么是 Ubuntu

简单说明:

Ubuntu 是最常见、资料最多、适合新手的 Linux 发行版之一。

3.3 什么是终端、Shell 和命令行

建议用通俗说法:

  • 终端:输入命令的窗口
  • Shell:负责理解命令的程序
  • 命令行:通过文字命令操作系统的方式

3.4 Windows Terminal、PowerShell、Ubuntu 终端的区别

这部分对新手非常有用。

可以说明:

名称作用
Windows Terminal终端软件,负责打开各种命令行环境
PowerShellWindows 的命令行环境
CMD传统 Windows 命令行
Ubuntu/WSL 终端Linux 命令行环境

4. 在 Windows 11 上安装 WSL

这一章进入实操。

4.1 检查 Windows 版本

说明 Windows 11 默认对 WSL 支持较好。

4.2 使用命令安装 WSL

推荐使用管理员 PowerShell:

powershell
wsl --install

Microsoft 官方文档也推荐使用 wsl --install 作为安装 WSL 的基本方式,并且可以通过 wsl --list --online 查看可安装的发行版。

参考文档:

4.3 查看可以安装哪些 Linux 发行版

powershell
wsl --list --online

或:

powershell
wsl -l -o

4.4 安装指定发行版

例如安装 Ubuntu:

powershell
wsl --install -d Ubuntu

或者安装 Debian:

powershell
wsl --install -d Debian

4.5 第一次启动 Ubuntu

说明第一次启动时会要求创建:

  • Linux 用户名
  • Linux 密码

这里要提醒:

这个 Linux 密码输入时不会显示星号,也不会显示字符,这是正常现象。

5. WSL 的基本使用方法

这一章让用户真正会打开和退出 WSL。

5.1 如何打开 WSL

几种方式:

powershell
wsl

或者:

powershell
wsl -d Ubuntu

也可以从开始菜单打开 Ubuntu。

5.2 如何退出 WSL

bash
exit

5.3 如何查看当前 Linux 系统版本

bash
cat /etc/os-release

5.4 如何更新 Ubuntu 软件包

bash
sudo apt update
sudo apt upgrade

5.5 Linux 中的 sudo 是什么

解释:

sudo 表示用管理员权限执行命令。

5.6 Windows 文件和 WSL 文件在哪里

这一节非常关键。

在 WSL 中访问 Windows C 盘:

bash
cd /mnt/c

Windows 中访问 WSL 文件:

text
\\wsl$

建议提醒:

开发项目尽量放在 WSL 自己的 Linux 文件系统中,例如 /home/用户名/projects,不要长期放在 /mnt/c 下,否则可能遇到性能或权限问题。

6. WSL 常用管理命令

这一章是“管理 WSL”的核心。

6.1 查看已安装的 WSL 发行版

powershell
wsl -l -v

说明输出中的:

  • NAME:发行版名称
  • STATE:运行状态
  • VERSION:WSL 版本,通常是 2

6.2 设置默认发行版

powershell
wsl --set-default Ubuntu

6.3 启动指定发行版

powershell
wsl -d Ubuntu

6.4 关闭当前发行版

powershell
wsl --terminate Ubuntu

6.5 关闭所有 WSL

powershell
wsl --shutdown

6.6 更新 WSL

powershell
wsl --update

Microsoft 的 WSL 基础命令文档中列出了常用管理命令,包括查看发行版、启动指定发行版、关闭 WSL、更新 WSL、导入导出发行版等。

参考文档:

6.7 查看 WSL 状态

powershell
wsl --status

7. WSL 中的软件安装和开发环境管理

这一章稍微了解一下即可,Linux 中的指令有很多,需要专门进行学习。

7.1 使用 apt 安装软件

例如:

bash
sudo apt install git
sudo apt install curl
sudo apt install tree

7.2 安装 Python、Node.js、Git 等开发工具

可以简单列举:

bash
python3 --version
node -v
git --version

7.3 WSL 适合放哪些项目

适合:

  • Python 项目
  • Node.js 项目
  • 前端项目
  • 后端项目
  • Linux 命令行练习
  • Docker 学习环境

7.4 WSL 和 VS Code 的配合

可以使用 VS Code 的 Remote - WSL 功能直接打开 WSL 中的项目。

8. WSL 的文件管理和磁盘位置

这一章适合解释很多新手常见困惑。

8.1 WSL 文件系统在哪里

说明用户不需要手动去找底层虚拟磁盘文件。

更推荐通过:

text
\\wsl$

访问。

8.2 Windows 盘和 Linux 盘的区别

位置示例适合用途
Windows 盘/mnt/c/Users/...临时访问 Windows 文件
Linux 文件系统/home/用户名/...放代码、装依赖、运行项目

8.3 为什么不建议把项目长期放在 C 盘路径下运行

说明:

  • 性能较差、文件监听可能异常
  • 权限行为不同
  • Node.js、Python 项目依赖目录可能变慢

8.4 推荐目录结构

例如:

bash
mkdir -p ~/projects
cd ~/projects

9. WSL 镜像的导出、备份与导入

核心重点

9.1 为什么要导出 WSL

适合场景:

  • 重装 Windows 前备份
  • 更换电脑
  • 迁移到其他磁盘
  • 保存一份干净开发环境

9.2 查看要导出的发行版名称

powershell
wsl -l -v

9.3 导出 WSL 为 tar 文件

powershell
wsl --export Ubuntu D:\backup\ubuntu.tar

Microsoft 官方 FAQ 说明,可以使用 wsl --export 将整个发行版导出为 tarball,再通过 wsl --import 导入回来,用于备份、迁移或移动 WSL 发行版。

参考文档:

9.4 导入 WSL 镜像

powershell
wsl --import Ubuntu-Backup D:\wsl\Ubuntu-Backup D:\backup\ubuntu.tar

参数解释:

powershell
wsl --import <新发行版名称> <安装位置> <镜像文件路径>

9.5 启动导入后的 WSL

powershell
wsl -d Ubuntu-Backup

10. 删除和重装 WSL 发行版

这一章需要提醒风险。

10.1 注销,也就是删除某个发行版

powershell
wsl --unregister Ubuntu

强调:

这个命令会删除该 WSL 发行版中的所有 Linux 文件,执行前一定要先导出备份。

10.2 重新安装发行版

powershell
wsl --install -d Ubuntu

10.3 什么时候需要删除重装

可以列举:

  • 环境搞乱了
  • 学习测试后想重来
  • 磁盘迁移后清理旧版本
  • 不再使用某个发行版

11. WSL 常见问题和新手避坑

11.1 WSL 和 Windows 的密码是不是同一个?

不是。

Linux 用户密码是 WSL 里面的密码,和 Windows 登录密码不是一回事。

11.2 输入密码时为什么没有显示?

Linux 终端输入密码时默认不显示字符,这是正常的。

11.3 WSL 可以代替 Linux 服务器吗?

不建议。

可以用来学习和开发,但正式部署最好使用真正的 Linux 服务器。

11.4 WSL 里可以使用 Docker 吗?

可以,但对新手建议配合 Docker Desktop 使用。

11.5 WSL 关掉窗口后是不是还在运行?

可能还在后台运行。

可以使用:

powershell
wsl --shutdown

彻底关闭。

11.6 WSL 占用磁盘越来越大怎么办?

可以简单说:

  • 删除不需要的软件和缓存
  • 导出再导入可能有助于整理空间
  • 不要在 WSL 中长期堆积无用文件

11.7 项目应该放在哪里?

推荐:

bash
~/projects

不推荐长期放在:

bash
/mnt/c/Users/xxx/Desktop

11.8 wsl 与 windows 使用同一个 ip

在 Windows 用户目录下创建或编辑:

PowerShell
notepad $env:USERPROFILE\.wslconfig

写入:

txt
[wsl2]
networkingMode=mirrored
dnsTunneling=true
autoProxy=true
firewall=true

保存后,在 PowerShell 执行:

PowerShell
wsl --shutdown

然后重新进入 WSL:

wsl

检查是否生效

在 wsl 中查看 IP:

ifconfig

12. 推荐的新手学习路线

12.1 第一阶段:会安装和打开 WSL

掌握:

powershell
wsl --install
wsl -l -v
wsl -d Ubuntu

12.2 第二阶段:会用基本 Linux 命令

掌握:

bash
pwd
ls
cd
mkdir
rm
cp
mv
cat
nano

12.3 第三阶段:会安装软件

掌握:

bash
sudo apt update
sudo apt install xxx

12.4 第四阶段:会管理 WSL

掌握:

powershell
wsl --shutdown
wsl --terminate Ubuntu
wsl --set-default Ubuntu

12.5 第五阶段:会备份和迁移 WSL

掌握:

powershell
wsl --export
wsl --import

13. 总结:WSL 应该怎么理解?

最后:

WSL 是 Windows 11 上非常适合学习 Linux 和搭建开发环境的工具。


对零基础用户来说,不需要一开始就理解所有 Linux 原理,先掌握安装、启动、文件位置、常用命令、备份迁移即可。


等熟悉 WSL 后,再逐步学习 Linux 命令、软件包管理、服务管理、Docker 和服务器部署。