WSL(Windows Subsystem for Linux)是微软官方提供的 Windows 子系统,允许用户在 Windows 系统上原生运行 Linux 二进制可执行文件。
目录
一、WSL 简介
二、安装 WSL 2(Windows 11 / Windows 10 最新版)
三、安装 WSL 2(旧版 Windows 10)
四、安装任意 Linux 发行版
五、WSL 基本配置与优化
六、常见问题与解决方案
七、WSL 与 Docker 的结合使用
八、卸载与重装
九、进阶技巧
WSL(Windows Subsystem for Linux)是微软官方提供的 Windows 子系统,允许用户在 Windows 系统上原生运行 Linux 二进制可执行文件。与传统虚拟机不同,WSL 与 Windows 共享同一个内核,启动速度极快(通常只需 1-2 秒),占用资源也更少。
WSL 目前有两个主要版本:
- WSL 1:基于 Linux 系统调用转换层,性能较好,但文件系统性能有限,不支持完整的 Linux 内核功能。
- WSL 2:基于完整的 Linux 内核虚拟机,文件系统性能大幅提升(可达 3-6 倍),支持完整的 Linux 内核功能(如 Docker、完整的系统调用)。
推荐使用 WSL 2。
二、安装 WSL 2(Windows 11 / Windows 10 最新版)
如果你的 Windows 10 版本 >= 19041 或使用 Windows 11,安装过程极为简单。
2.1 一键自动安装
以管理员身份打开 PowerShell 或 Windows Terminal,执行以下命令:
wsl --install
此命令会自动:
- 启用 WSL 和虚拟机平台功能
- 下载并安装最新的 Ubuntu(默认发行版)
- 安装 WSL 内核更新包
安装完成后,重启计算机。首次启动时会提示你创建 Linux 用户账户和密码。
2.2 仅安装 WSL 内核(不自动安装发行版)
wsl --install --no-distribution
此命令只安装 WSL 2 内核,适合需要手动选择发行版的用户。
三、安装 WSL 2(旧版 Windows 10)
如果 Windows 10 版本 < 19041,需要手动开启相关功能。
3.1 手动开启 WSL 和虚拟机平台
# 启用 WSL dism.exe /online /enable-namespace:Microsoft-Windows-Subsystem-Linux /all # 启用虚拟机平台 dism.exe /online /enable-namespace:VirtualMachinePlatform /all # 重启后设置 WSL 默认版本为 2 wsl --set-default-version 2
3.2 从 Microsoft Store 安装 Linux 发行版
打开 Microsoft Store,搜索 “Linux”,选择你喜欢的发行版(Ubuntu、Debian、Fedora 等),点击安装。
3.3 验证 WSL 2 内核版本
wsl --status wsl --list --verbose
确保 VERSION 列显示为 2。
四、安装任意 Linux 发行版
4.1 列出可用发行版
wsl --list --online
常见发行版包括:Ubuntu、Debian、Ubuntu-22.04、Ubuntu-24.04、OracleLinux、Fedora。
4.2 安装指定发行版
# 安装 Ubuntu 24.04 wsl --install --distribution Ubuntu-24.04 # 安装 Debian wsl --install --distribution Debian # 安装 Fedora wsl --install --distribution Fedora
4.3 导入现有发行版(从 tar 归档)
# 导出现有发行版 wsl --export Ubuntu-24.04 Ubuntu-24.04.tar # 导入到新位置 wsl --import Ubuntu-24.04 D:\WSL\Ubuntu-24.04 Ubuntu-24.04.tar --version 2 # 设置默认用户 ubuntu24.04 config --default-user username
五、WSL 基本配置与优化
5.1 WSL 配置文件
WSL 的全局配置文件位于:
%USERPROFILE%\.wslconfig
示例内容:
[wsl2] memory=8GB processors=4 paging=.5 swap=4GB kernel=D:\WSL\kernel localhostForwarding=true dnsTunneling=true autoMemoryReclaim=gradual
5.2 发行版内配置文件
每个发行版的配置文件位于 /etc/wsl.conf:
[network] hostname=wsl systemd=true [automount] enabled=true options="metadata,umask=22,fmask=11" mountFsTab=true [interop] enabled=true
5.3 更换 WSL 2 默认 Linux 内核
[wsl2] kernel=D:\WSL\kernel-5.15.153.1
5.4 访问 Windows 文件
cd /mnt/c/Users/YourName/Documents # 或在 Windows 中: # \\wsl$\Ubuntu-24.04\home\username
六、常见问题与解决方案
问题 1:WSL 安装后无法启动,报错 “The operation timed out”
原因:网络问题导致 WSL 内核或发行版下载失败。
解决:手动下载 wsl_update_x64.msi 或离线导入发行版 tar 包。
问题 2:WSL 2 运行缓慢,CPU/内存占用高
解决:在 %USERPROFILE%\.wslconfig 中添加 memory=4GB processors=2 等资源限制。
问题 3:WSL 与 Windows 文件互操作速度极慢
解决:将项目文件放在 WSL 文件系统中,使用 VSCode Remote-WSL 插件开发。
问题 4:wsl –install 报错 “WSL_E_INSTALLATION_DISTRO_INVALID”
解决:使用 wsl --list --online 查看正确的发行版名称。
问题 5:WSL 2 无法关闭
解决:wsl --shutdown 然后 wsl --terminate Ubuntu
问题 6:WSL 2 中无法使用 systemctl
解决:编辑 /etc/wsl.conf 添加 [boot] systemd=true 后 wsl --shutdown
问题 7:Git/npm 代理设置正确但无法访问
解决:WSL 2 有独立网络栈,需单独配置代理。
问题 8:WSL 与 Windows 时间不同步
解决:timedatectl set-local-rtc 1
七、WSL 与 Docker 的结合使用
在 WSL 2 中安装 Docker Desktop 或直接安装 Docker Engine:
sudo apt update && sudo apt install docker.io docker-compose sudo service docker start sudo usermod -aG docker $USER
八、卸载与重装
wsl --unregister Ubuntu wsl --unregister
九、进阶技巧
9.1 在 Windows Terminal 中配置 WSL
在 Windows Terminal 设置中添加 WSL 配置段。
9.2 Git 文件权限
git config --global core.fileMode false
9.3 迁移 WSL 2 到其他盘
wsl --export Ubuntu-24.04 ubuntu.tar wsl --unregister Ubuntu-24.04 wsl --import Ubuntu-24.04 D:\WSL ubuntu.tar --version 2
这样,你就完成了 WSL 的完整配置。祝你使用愉快!
发表回复
要发表评论,您必须先登录。