核心提示:WSL2 让 Windows 用户无需虚拟机或双系统即可运行完整的 Linux 环境。本文涵盖从安装到高级配置的全部流程,帮助你快速搭建高效的开发环境。

什么是 WSL2

WSL(Windows Subsystem for Linux)是微软为 Windows 10/11 开发的兼容层,允许用户在 Windows 上直接运行 Linux 二进制文件。WSL2 是其第二代版本,采用真正的 Linux 内核,性能大幅提升。

WSL1 vs WSL2 核心区别

特性WSL1WSL2
架构兼容层翻译完整 Linux 内核
文件系统性能较慢快 2-20 倍
Docker 支持有限完整支持
系统调用兼容性部分100%
启动速度略慢但可接受

推荐使用 WSL2,除非你有特殊的兼容性需求。

系统要求

在开始安装之前,请确认你的系统满足以下要求:

  • 操作系统:Windows 10 版本 2004 或更高(Build 19041+)或 Windows 11
  • 架构:x64 或 ARM64
  • 虚拟化:BIOS/UEFI 中已启用虚拟化功能
  • 内存:建议至少 8GB(运行 Linux 发行版需要)

检查 Windows 版本

打开 PowerShell,运行以下命令:

systeminfo | findstr /I "version"

或者使用更简单的方法:

winver

如果版本低于 2004,建议先更新 Windows。

快速安装(推荐)

一键安装命令

微软提供了简化的安装命令,自动完成所有必要步骤:

  1. 以管理员身份打开 PowerShell
    • 右键点击开始菜单
    • 选择 “Windows PowerShell(管理员)” 或 “终端(管理员)”
  2. 运行安装命令
wsl --install
  1. 重启计算机

安装完成后需要重启才能生效。

这个命令做了什么?

wsl --install 会自动完成以下操作:

  • 启用 “Windows 子系统 for Linux” 可选功能
  • 启用 “虚拟机平台” 可选功能
  • 下载并安装 Ubuntu(默认发行版)
  • 设置 WSL2 为默认版本

自定义安装

选择其他 Linux 发行版

如果你不想使用默认的 Ubuntu,可以先查看可用的发行版列表:

wsl --list --online

常见输出示例:

NAME            FRIENDLY NAME
Ubuntu          Ubuntu
Ubuntu-22.04    Ubuntu 22.04 LTS
Ubuntu-24.04    Ubuntu 24.04 LTS
Debian          Debian GNU/Linux
Kali-Linux      Kali Linux Rolling
openSUSE-15     openSUSE Leap 15
SLES-15         SUSE Linux Enterprise Server 15

安装指定发行版:

wsl --install -d Ubuntu-24.04

或者使用完整语法:

wsl --install --distribution Ubuntu-24.04

安装多个发行版

你可以安装多个 Linux 发行版,随时切换使用:

wsl --install -d Ubuntu-22.04
wsl --install -d Debian
wsl --install -d Kali-Linux

指定安装位置

默认情况下,WSL 发行版安装在系统盘。如果你想安装到其他位置:

wsl --install --distribution Ubuntu-24.04 --location D:\WSL\Ubuntu

首次启动配置

创建 Linux 用户账户

第一次启动新安装的发行版时,会打开一个终端窗口,要求你设置用户名和密码:

Installing, this may take a few minutes...
Please create a default UNIX user account. The username does not need to match your Windows username.
For more information visit: https://aka.ms/wslusers

Enter new UNIX username: yourname
Enter new UNIX password:
Retype new UNIX password:

重要提示

  • 用户名可以是任意名称,不必与 Windows 用户名相同
  • 密码输入时不会显示(Linux 安全特性)
  • 请牢记密码,后续使用 sudo 命令时需要

更新系统包

首次登录后,建议立即更新系统包:

# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y

# openSUSE
sudo zypper refresh && sudo zypper update -y

# Kali
sudo apt update && sudo apt full-upgrade -y

基本命令参考

查看已安装的发行版

wsl --list --verbose

或简写:

wsl -l -v

示例输出:

  NAME      STATE           VERSION
* Ubuntu    Running         2
  Debian    Stopped         2

星号(*)表示当前默认的发行版。

启动特定发行版

wsl --distribution Ubuntu-24.04

或简写:

wsl -d Ubuntu-24.04

设置默认发行版

wsl --set-default Ubuntu-24.04

或简写:

wsl -s Ubuntu-24.04

设置后,直接运行 wsl 命令将启动指定的发行版。

切换 WSL 版本

查看当前版本:

wsl -l -v

升级到 WSL2:

wsl --set-version Ubuntu-24.04 2

降级到 WSL1:

wsl --set-version Ubuntu-24.04 1

设置默认版本(影响新安装的发行版):

wsl --set-default-version 2

停止发行版

wsl --terminate Ubuntu-24.04

或简写:

wsl -t Ubuntu-24.04

卸载发行版

wsl --unregister Ubuntu-24.04

警告:这会删除发行版及其所有数据,请提前备份重要文件。

文件系统访问

从 Windows 访问 Linux 文件

在文件管理器地址栏输入:

\\wsl$\Ubuntu-24.04\home\yourname

或者在 PowerShell 中:

explorer.exe \\wsl$\Ubuntu-24.04\home\yourname

从 Linux 访问 Windows 文件

Windows 驱动器自动挂载在 /mnt 目录下:

cd /mnt/c/Users/YourName
ls /mnt/d/Projects

最佳实践

推荐:在 Linux 文件系统中工作(~/projects)以获得最佳性能。

避免:在 WSL 中直接操作 /mnt/c/ 下的文件,性能会显著下降。

开发环境配置

安装常用开发工具

# Git
sudo apt install git -y

# Node.js
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt install -y nodejs

# Python
sudo apt install python3 python3-pip -y

# Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER

VS Code 集成

  1. 在 Windows 上安装 VS Code
  2. 安装 “Remote – WSL” 扩展
  3. 在 WSL 终端中运行:
code .

VS Code 会自动连接到 WSL 环境,提供完整的开发体验。

Windows Terminal 配置

推荐使用 Windows Terminal 管理 WSL 会话:

  1. 从 Microsoft Store 安装 Windows Terminal
  2. 打开设置(Ctrl + ,
  3. 添加新的 WSL 配置文件

示例配置(添加到 settings.json):

{
    "profiles": {
        "list": [
            {
                "guid": "{ubuntu-profile-guid}",
                "name": "Ubuntu 24.04",
                "commandline": "wsl -d Ubuntu-24.04",
                "icon": "ms-appx:///ProfileIcons/{9acb9455-ca41-5af7-950f-6bca1bc9722f}.png"
            }
        ]
    }
}

常见问题解答

Q: wsl –install 命令不工作怎么办?

A: 按顺序检查:

  1. 确认 Windows 版本 >= 2004(运行 winver
  2. 以管理员身份运行 PowerShell
  3. 检查虚拟化是否在 BIOS 中启用
  4. 手动启用功能:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  1. 重启后运行 wsl --update

Q: 如何确认我使用的是 WSL2?

A: 运行 wsl -l -v,查看 VERSION 列是否为 2。

Q: WSL2 占用太多磁盘空间怎么办?

A: 可以压缩虚拟磁盘文件:

  1. 停止 WSL:wsl --shutdown
  2. 找到 VHDX 文件(通常在 %LOCALAPPDATA%\Packages\<发行版>\LocalState\ext4.vhdx
  3. 使用 DiskPart 压缩:
diskpart
select vdisk file="C:\path\to\ext4.vhdx"
attach vdisk readonly
compact vdisk
detach vdisk
exit

Q: Docker Desktop 和 WSL2 如何配合使用?

A:

  1. 安装 Docker Desktop for Windows
  2. 打开 Docker Desktop 设置
  3. 进入 “Resources” → “WSL integration”
  4. 启用你的 Linux 发行版
  5. 在 WSL 中运行 docker ps 验证

Q: 如何在 WSL2 中运行 GUI 应用?

A: Windows 11 和 Windows 10(22000+)支持 WSLg,可以直接运行 Linux GUI 应用:

sudo apt install gedit -y
gedit  # 直接在 Windows 桌面打开

性能优化技巧

1. 使用 WSL2 而不是 WSL1

WSL2 的文件系统性能比 WSL1 快 2-20 倍,尤其是涉及大量小文件操作时。

2. 在 Linux 文件系统中工作

避免在 /mnt/c/ 下工作,使用 Linux 原生路径(如 ~/projects)。

3. 排除杀毒软件扫描

将 WSL VHDX 文件添加到 Windows Defender 排除列表:

  1. 打开 Windows 安全中心
  2. 病毒和威胁防护 → 管理设置
  3. 排除项 → 添加排除项 → 文件夹
  4. 添加 %LOCALAPPDATA%\Packages 中包含发行版的文件夹

4. 增加 WSL 内存限制

创建或编辑 %USERPROFILE%\.wslconfig

[wsl2]
memory=8GB
processors=4
swap=4GB

总结

WSL2 是 Windows 上运行 Linux 开发环境的最佳选择。通过本指南,你应该能够:

  • ✅ 一键安装 WSL2 和 Linux 发行版
  • ✅ 配置多个发行版并灵活切换
  • ✅ 掌握常用的 WSL 管理命令
  • ✅ 理解文件系统的最佳实践
  • ✅ 搭建完整的开发环境
  • ✅ 解决常见问题和性能优化

下一步建议

  1. 安装你需要的开发工具(Git、Node.js、Python 等)
  2. 配置 VS Code Remote – WSL 扩展
  3. 探索 Linux 生态系统的丰富工具

参考资料


本文基于 WSL 最新版本编写,部分功能可能随 Windows 更新有所变化。建议查阅官方文档获取最新信息。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注