目录
[1.1 WSL简介](#1.1 WSL简介)
[1.1.1 WSL 的主要功能](#1.1.1 WSL 的主要功能)
[1.1.2 WSL 的版本](#1.1.2 WSL 的版本)
[1.1.3 为什么使用 WSL?](#1.1.3 为什么使用 WSL?)
[1.1.4 WSL 的工作原理](#1.1.4 WSL 的工作原理)
[1.1.5 WSL 的常见使用场景](#1.1.5 WSL 的常见使用场景)
[1.1.6 与虚拟机的区别](#1.1.6 与虚拟机的区别)
[1.1.7 适合使用 WSL 的人群](#1.1.7 适合使用 WSL 的人群)
[1.2 启用 WSL](#1.2 启用 WSL)
[1.2.1 打开 PowerShell(管理员模式)。](#1.2.1 打开 PowerShell(管理员模式)。)
[1.2.2 输入以下命令来启用 WSL 和虚拟机平台:](#1.2.2 输入以下命令来启用 WSL 和虚拟机平台:)
[2.1 查看可安装发行版](#2.1 查看可安装发行版)
[2.1.1 查看可用的虚拟机](#2.1.1 查看可用的虚拟机)
[2.1.2 输出示例](#2.1.2 输出示例)
[2.2 安装虚拟机](#2.2 安装虚拟机)
[2.2.1 安装指定的 Linux 发行版:](#2.2.1 安装指定的 Linux 发行版:)
[2.2.2 例如安装 Ubuntu 20.04:](#2.2.2 例如安装 Ubuntu 20.04:)
[2.2.3 首次启动](#2.2.3 首次启动)
[2.3 验证虚拟机状态](#2.3 验证虚拟机状态)
[2.3.1 验证虚拟机是否安装成功并启动](#2.3.1 验证虚拟机是否安装成功并启动)
[2.3.2 启动虚拟机](#2.3.2 启动虚拟机)
[2.4 删除现有虚拟机](#2.4 删除现有虚拟机)
[2.4.1 查看已安装的虚拟机](#2.4.1 查看已安装的虚拟机)
[2.4.2 注销或删除虚拟机](#2.4.2 注销或删除虚拟机)
[3. 设置 WSL 版本(可选)](#3. 设置 WSL 版本(可选))
[3.1 查看当前版本:](#3.1 查看当前版本:)
[3.2 切换到 WSL 2(推荐):](#3.2 切换到 WSL 2(推荐):)
[3.3 设置默认版本(新安装的虚拟机使用此版本):](#3.3 设置默认版本(新安装的虚拟机使用此版本):)
[3.4 注意事项](#3.4 注意事项)
1.wsl安装
1.1 WSL简介
WSL(Windows Subsystem for Linux,Windows 下的 Linux 子系统)是微软在 Windows 10 和 Windows 11 中推出的一项功能,允许用户在 Windows 系统中运行完整的 Linux 环境,而无需安装虚拟机或双系统。
以下是关于 WSL 的详细介绍:
1.1.1 WSL 的主要功能
WSL 提供了一种在 Windows 系统中运行 Linux 环境的方法,特点如下:
- 可以运行大多数 Linux 命令行工具、脚本和应用程序。
- 兼容大多数 Linux 发行版(如 Ubuntu、Debian、Kali Linux 等)。
- 无需启动虚拟机或双系统,性能接近原生。
- 能直接访问 Windows 文件系统(通过
/mnt/c/
等目录)。
1.1.2 WSL 的版本
WSL 有两个主要版本:
WSL 1
- 特点:使用 Linux 系统调用翻译层,与 Windows 内核交互。
- 优点:启动速度快,占用少量资源,兼容性高。
- 缺点:不支持完整的 Linux 内核功能,如 Docker 等依赖内核功能的软件。
WSL 2
- 特点:使用轻量级虚拟机运行完整的 Linux 内核。
- 优点:性能更强,兼容性更好,可以运行 Docker 等复杂的应用程序。
- 缺点:启动速度较慢,占用更多内存(但仍比传统虚拟机轻量)。
你可以通过以下命令检查 WSL 版本:
wsl --list --verbose
1.1.3 为什么使用 WSL?
WSL 对开发者和 Linux 用户特别有吸引力,原因包括:
开发者友好
- 可直接在 Linux 环境中运行 Node.js、Python、Ruby、Go 等开发工具。
- 使用
git
进行版本控制,支持 Linux 下的开发流程。
系统兼容
- 直接访问 Windows 文件和工具(如 VS Code、PowerShell 等)。
- 无需配置复杂的网络桥接即可在 Linux 和 Windows 应用之间传输数据。
无需虚拟机或双系统
- 与传统虚拟机相比,占用更少的系统资源。
- 不需要重新启动或切换系统。
1.1.4 WSL 的工作原理
WSL 在 Windows 上运行 Linux 的方式包括:
- WSL 1:通过翻译层将 Linux 系统调用转化为 Windows 系统调用。
- WSL 2:使用轻量级虚拟机运行完整的 Linux 内核,并通过快速文件传输机制与 Windows 文件系统交互。
1.1.5 WSL 的常见使用场景
- Web 开发:使用 Linux 下的工具(如 Nginx、MySQL、Node.js 等)进行开发。
- 学习 Linux:提供一个无风险的环境来学习 Linux 命令和工具。
- 运行脚本和工具:如 Bash 脚本、Python 脚本等。
- 系统集成:将 Linux 工具与 Windows 应用程序无缝结合。
1.1.6 与虚拟机的区别
特性 | WSL | 虚拟机 |
---|---|---|
性能 | 接近原生 | 较高但略慢 |
启动速度 | 几乎瞬间启动 | 需要完整虚拟机启动 |
系统资源占用 | 很低 | 较高 |
兼容性 | 限于 Linux 命令行环境 | 完整的 Linux 桌面或服务器环境 |
文件系统访问 | 无缝访问 Windows 文件系统 | 需要配置共享文件夹 |
1.1.7 适合使用 WSL 的人群
- Windows 用户,需要偶尔运行 Linux 工具或脚本。
- Web 开发者,特别是使用 Linux 环境作为部署目标的开发者。
- 想学习 Linux,但又不想安装双系统或虚拟机的用户。
1.2 启用 WSL
1.2.1 打开 PowerShell(管理员模式)。
1.2.2 输入以下命令来启用 WSL 和虚拟机平台:
wsl --install
该命令将自动启用所需的功能,包括 WSL 1、WSL 2 和虚拟机平台。若系统未安装虚拟机平台,安装过程中会提示你重启计算机。
如果 wsl --install
命令不可用,可以尝试以下单独的命令:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
2.安装虚拟机
2.1 查看可安装发行版
2.1.1 查看可用的虚拟机
使用以下命令查看支持的 Linux 发行版:
wsl --list --online
2.1.2 输出示例
C:\Users\32956>wsl --list --online
以下是可安装的有效分发的列表。
使用 'wsl.exe --install <Distro>' 安装。
NAME FRIENDLY NAME
Ubuntu Ubuntu
Debian Debian GNU/Linux
kali-linux Kali Linux Rolling
Ubuntu-18.04 Ubuntu 18.04 LTS
Ubuntu-20.04 Ubuntu 20.04 LTS
Ubuntu-22.04 Ubuntu 22.04 LTS
Ubuntu-24.04 Ubuntu 24.04 LTS
OracleLinux_7_9 Oracle Linux 7.9
OracleLinux_8_7 Oracle Linux 8.7
OracleLinux_9_1 Oracle Linux 9.1
openSUSE-Leap-15.6 openSUSE Leap 15.6
SUSE-Linux-Enterprise-15-SP5 SUSE Linux Enterprise 15 SP5
SUSE-Linux-Enterprise-15-SP6 SUSE Linux Enterprise 15 SP6
openSUSE-Tumbleweed openSUSE Tumbleweed
2.2 安装虚拟机
2.2.1 安装指定的 Linux 发行版:
wsl --install -d <虚拟机名称>
2.2.2 例如安装 Ubuntu 20.04:
wsl --install -d Ubuntu-22.04
2.2.3 首次启动
安装完成后,首次启动时会提示设置用户名和密码。设置完成后即可进入新的 WSL 环境。列如:
Enter new UNIX username: fhy
New password:
Retype new password:
passwd: password updated successfully
Installation successful!
2.3 验证虚拟机状态
2.3.1 验证虚拟机是否安装成功并启动
wsl --list --verbose
2.3.2 启动虚拟机
wsl
2.4 删除现有虚拟机
2.4.1 查看已安装的虚拟机
使用以下命令列出当前已安装的 Linux 发行版:
wsl --list --verbose
输出示例:
C:\Users\32956>wsl --list --verbose
NAME STATE VERSION
`
- Ubuntu-22.04 Running 1 `
2.4.2 注销或删除虚拟机
如果确定不需要某个虚拟机,可以删除它。
(1)注销虚拟机(保留文件): 仅删除 WSL 环境配置,不会删除对应的文件:
wsl --unregister <虚拟机名称>
例如:
wsl --unregister Ubuntu-22.04
(2)完全删除虚拟机(包括文件):
- 找到虚拟机的文件存储位置(默认在
C:\Users\<用户名>\AppData\Local\Packages
)。 - 手动删除对应的文件夹。
3. 设置 WSL 版本(可选)
WSL 支持两种版本,WSL 1 和 WSL 2。可以设置虚拟机使用的版本。
3.1 查看当前版本:
wsl --list --verbose
3.2 切换到 WSL 2(推荐):
wsl --set-version <虚拟机名称> 2
例如:
wsl --set-version Ubuntu-20.04 2
3.3 设置默认版本(新安装的虚拟机使用此版本):
wsl --set-default-version 2
3.4 注意事项
当安装了vmware时,不要启动WSL2,可能导致虚拟化问题。