Windows WSL功能及使用指南
介绍一下Windows wsl
Windows Subsystem for Linux(WSL)是微软在 Windows 10 和 Windows 11 上推出的功能,允许用户直接在 Windows 系统中运行 原生 Linux 二进制可执行文件,而无需传统的虚拟机(如 VMware、VirtualBox)或双系统引导。WSL 提供了与 Linux 内核高度兼容的子系统,使开发者、系统管理员和普通用户能够更方便地在 Windows 上使用 Linux 工具和环境。
WSL 的主要版本
1. WSL 1
- 架构:将 Linux 系统调用转换为 Windows 内核调用,无需真正的 Linux 内核。
- 特点:
- 轻量级,启动快。
- 文件系统性能较差(尤其是大量小文件操作)。
- 不支持完整的 Linux 内核功能(如 Docker 需要额外配置)。
2. WSL 2
- 架构:基于 轻量级虚拟机(Hyper-V),运行真正的 Linux 内核。
- 特点:
- 接近原生 Linux 性能(文件系统、进程管理等大幅优化)。
- 支持 Docker 等依赖 Linux 内核的功能。
- 需要启用 Hyper-V(部分老旧电脑可能不支持)。
WSL 的核心功能
- 运行 Linux 命令行工具(如
grep
、awk
、sed
、ssh
等)。 - 支持多种 Linux 发行版(Ubuntu、Debian、Kali Linux、Fedora 等,可通过 Microsoft Store 安装)。
- 与 Windows 深度集成:
- 在 Linux 中访问 Windows 文件(
/mnt/c/
对应C:\
)。 - 在 Windows 中访问 Linux 文件(通过
\\wsl$\
网络路径)。
- 在 Linux 中访问 Windows 文件(
- 支持 GPU 加速(CUDA、DirectML,适用于 AI/ML 开发)。
- 支持 systemd(WSL 2 较新版本可用,方便管理后台服务)。
安装 WSL(以 Windows 11 为例)
方法 1:通过命令安装(推荐)
1 | wsl --install |
此命令会:
- 启用 WSL 和虚拟机平台功能。
- 默认安装 Ubuntu,如需其他发行版可运行:
1
wsl --install -d <发行版名称> # 例如:wsl --install -d Debian
方法 2:手动安装
- 启用 WSL 功能:
1
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
- 启用虚拟机平台(WSL 2 需要):
1
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
- 下载并安装 Linux 内核更新包(官方链接)。
- 设置默认版本为 WSL 2:
1
wsl --set-default-version 2
- 从 Microsoft Store 安装 Linux 发行版(如 Ubuntu)。
常用 WSL 命令
命令 | 说明 |
---|---|
wsl --list --verbose |
查看已安装的发行版及 WSL 版本 |
wsl --set-version <发行版> 2 |
将发行版转换为 WSL 2 |
wsl --update |
更新 WSL 内核 |
wsl --shutdown |
强制关闭所有 WSL 实例 |
wsl -d <发行版> |
启动指定发行版 |
WSL 的适用场景
- 开发环境:运行 Python、Ruby、Node.js 等 Linux 优先的工具链。
- DevOps/运维:使用
bash
、awk
、kubectl
等工具。 - 学习 Linux:无需安装虚拟机即可体验 Linux 命令行。
- AI/数据科学:支持 GPU 加速的 TensorFlow/PyTorch。
WSL 的限制
- 不支持图形界面(GUI)应用(但可通过 X Server 或 WSLg 实现,Win11 已内置支持)。
- WSL 2 需要虚拟化支持(部分老旧电脑可能无法启用)。
- 不适合高性能 Linux 服务器场景(推荐直接使用物理机或完整虚拟机)。
总结
WSL 是 Windows 上运行 Linux 应用的最佳方案之一,尤其适合开发者。如果你需要在 Windows 上无缝使用 Linux 工具链,WSL 2 是最佳选择。对于需要完整 Linux 环境的用户,可以考虑 VMware 或双系统方案。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Helloeuler!