你是否曾梦想在Windows系统上无缝地运行Linux环境,而无需繁琐的双系统启动或笨重的虚拟机?Windows Subsystem for Linux (WSL) 正是实现这一愿望的强大工具。本文将为你提供一份详尽的WSL安装指南,从准备工作到高级配置,助你轻松在Windows上搭建一个高效的Linux开发环境。
WSL是什么?以及为何选择它?
Windows Subsystem for Linux (WSL) 是微软推出的一项革命性功能,它允许开发人员在Windows操作系统上直接运行一个完整的Linux环境,而无需传统的虚拟机或双引导设置。它通过提供一个兼容层,将Linux的系统调用转换为Windows可理解的调用,从而让Linux二进制文件能够直接在Windows上运行。
为何选择WSL?
- 无缝集成: WSL与Windows操作系统深度融合,您可以直接在Windows文件资源管理器中访问Linux文件,或在WSL中使用Windows应用程序。
- 轻量高效: 相较于传统的虚拟机,WSL启动速度更快,资源占用更少,因为它不需要运行一个完整的Linux内核虚拟机(WSL 1),或者即使是WSL 2,其虚拟化开销也远低于传统VMware或VirtualBox。
- 强大的开发环境: 开发者可以利用Linux的强大命令行工具、脚本、各种开发库和框架(如Docker、Kubernetes、Node.js、Python、Ruby等),而无需离开Windows桌面环境。
- 简化操作: 省去了双系统切换的麻烦,也避免了虚拟机快照、网络配置等复杂问题,让开发流程更加顺畅。
WSL安装前的准备工作
在开始WSL的安装之前,请确保您的系统满足以下要求,以保证安装过程顺利进行并获得最佳体验:
1. 确认Windows版本
WSL 2(强烈推荐的版本)要求您的Windows系统版本达到或高于特定要求:
- 对于x64系统: Windows 10 版本 1903 或更高版本(内部版本 18362 或更高版本),或者 Windows 11。
- 对于ARM64系统: Windows 10 版本 2004 或更高版本(内部版本 19041 或更高版本)。
您可以通过在“运行”对话框(Win + R)中输入winver来查看您的Windows版本信息。
2. 启用BIOS/UEFI中的虚拟化技术
为确保WSL 2能够正常运行并发挥其性能优势,您需要确保电脑的CPU虚拟化技术(如Intel VT-x或AMD-V)已在BIOS/UEFI设置中启用。大多数现代电脑默认是启用的,但如果遇到问题,请检查:
- 重启电脑,在开机时根据屏幕提示进入BIOS/UEFI设置(通常是Del、F2、F10、F12等键)。
- 在设置中寻找与“Virtualization Technology”、“Intel VT-x”、“AMD-V”、“SVM Mode”等相关的选项,并确保其处于“Enabled”状态。
- 保存设置并退出,电脑将重启。
WSL安装步骤详解
现在,我们将开始WSL的安装过程。Windows 10/11提供了多种安装WSL的方式,这里我们推荐使用简化安装命令,它能自动完成大部分步骤。如果你的系统版本较旧,我们会提供手动安装的详细步骤。
方法一:简化安装命令(推荐)
对于Windows 10 版本 2004 及更高版本,以及Windows 11 用户,可以使用一个简单的命令来完成WSL的安装:
-
打开管理员权限的PowerShell或命令提示符:
在Windows搜索栏中输入“PowerShell”或“cmd”,右键点击“Windows PowerShell”或“命令提示符”,选择“以管理员身份运行”。 -
执行安装命令:
在打开的PowerShell/CMD窗口中输入以下命令并按回车:wsl --install此命令将执行以下操作:
- 启用“适用于Linux的Windows子系统”可选组件。
- 启用“虚拟机平台”可选组件(WSL 2 必需)。
- 下载并安装最新WSL Linux内核。
- 安装Ubuntu作为默认的Linux发行版(如果您想安装其他发行版,可以在命令后指定,例如:
wsl --install -d Debian)。
-
重启电脑:
命令执行完毕后,系统可能会提示您重启电脑以完成安装。请务必重启。 -
首次启动Linux发行版:
重启后,您安装的Linux发行版(例如Ubuntu)将自动启动并完成最后的设置。系统会提示您创建新的UNIX用户名和密码。请记住这些信息,它们将用于您在Linux环境中的日常操作。
方法二:手动安装步骤(适用于旧版本Windows或需要自定义安装)
如果您的Windows版本不支持wsl --install命令,或者您更喜欢手动控制每个步骤,请按照以下指南操作:
步骤一:启用WSL功能
这是安装WSL的第一步,启用Windows中的“适用于Linux的Windows子系统”可选功能。
-
打开管理员权限的PowerShell:
在Windows搜索栏中输入“PowerShell”,右键点击“Windows PowerShell”,选择“以管理员身份运行”。 -
执行命令:
在PowerShell窗口中输入以下命令并按回车:dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart此命令将启用WSL所需的核心组件。
步骤二:启用虚拟机平台功能(WSL 2必需)
WSL 2利用了Hyper-V虚拟化技术,因此需要启用“虚拟机平台”组件。如果您只计划使用WSL 1,则可以跳过此步骤,但强烈建议启用以支持WSL 2。
-
在同一个管理员权限的PowerShell中:
输入以下命令并按回车:dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart -
重启您的电脑:
完成以上两个dism命令后,请务必重启您的电脑,以使这些功能更改生效。这是关键的一步。
步骤三:安装WSL Linux发行版
电脑重启后,您可以通过Microsoft Store选择并安装您偏好的Linux发行版。常见的选择包括:
- Ubuntu (推荐,尤其是初学者)
- Debian
- Kali Linux
- openSUSE
- SUSE Linux Enterprise Server
打开Microsoft Store,在搜索栏中输入您想要安装的Linux发行版名称(例如“Ubuntu”),点击“获取”或“安装”按钮,等待下载和安装完成。
步骤四:设置WSL 2为默认版本
即使您安装了Linux发行版,它可能默认仍然是WSL 1。强烈建议将WSL 2设置为默认版本,以获得更好的性能和兼容性。
-
打开PowerShell(无需管理员权限):
输入以下命令并按回车:wsl --set-default-version 2此命令会将所有新安装的Linux发行版默认设置为WSL 2。对于已安装的发行版,您需要单独转换。
注意: 如果此命令执行后出现“WSL 2 requires an update to its kernel component”错误,请继续下一步安装WSL内核更新包。
步骤五:安装WSL内核更新包
这是WSL 2正常运行的关键。即使wsl --install命令会自动处理,手动安装时也可能需要下载并运行此包。
-
下载WSL 2 Linux内核更新包:
访问微软官方文档或直接从以下链接下载最新包: -
运行下载的
.msi文件:
像安装普通Windows程序一样运行它。安装过程非常快,只需点击“下一步”直到完成。 -
验证WSL 2版本(可选):
如果您之前由于内核问题无法将默认版本设置为2,现在可以再次尝试wsl --set-default-version 2命令。 您也可以将特定发行版设置为WSL 2:wsl --set-version <发行版名称> 2例如:
wsl --set-version Ubuntu 2要查看您的发行版版本,运行:
wsl -l -vNAME STATE VERSION * Ubuntu Running 2 docker-desktop Stopped 2如果“VERSION”列显示为“2”,则表示成功。
步骤六:启动并初始化Linux发行版
至此,WSL和Linux发行版的核心安装已完成。现在可以启动您的Linux环境了。
-
启动发行版:
您可以从“开始”菜单中找到并点击您安装的Linux发行版图标(例如“Ubuntu”),或者直接在PowerShell/CMD中输入其名称(例如ubuntu)并按回车。 -
创建UNIX用户:
首次启动时,系统会提示您输入新的UNIX用户名和密码。这是您在Linux环境中的账户凭据,与您的Windows账户无关。请妥善保管。
WSL安装后的配置与常用操作
WSL安装完成后,您可以通过一些基本的配置和操作来提升您的使用体验。
1. 更新Linux系统
这是安装任何Linux发行版后的第一个重要步骤,确保您的系统是最新的,并拥有所有安全补丁和最新软件包。
sudo apt update && sudo apt upgrade -y
sudo apt update用于更新软件包列表,sudo apt upgrade -y用于升级所有已安装的软件包。-y参数表示自动同意所有提示。
2. 文件系统访问
WSL的一大优势是其与Windows文件系统的深度集成。
-
在Windows中访问WSL文件:
打开Windows资源管理器,您会在导航窗格中找到一个名为“Linux”的选项。点击它,就可以看到您安装的Linux发行版,并像访问普通Windows文件夹一样浏览其文件系统(例如,\wsl.localhostUbuntuhome<您的用户名>)。 -
在WSL中访问Windows文件:
Windows的驱动器被挂载在WSL的/mnt目录下。例如,您的Windows C盘可以在WSL中通过/mnt/c/访问。cd /mnt/c/Users/<您的Windows用户名>/Desktop这使得在Linux环境中处理Windows上的文件变得非常方便。
3. 集成开发环境(如VS Code)
如果您是开发人员,强烈推荐安装Visual Studio Code (VS Code) 并为其安装“Remote - WSL”扩展。这个扩展允许您直接在VS Code中打开WSL文件夹,并在WSL环境中运行代码、调试和使用终端,提供如同原生Linux开发一般的体验。
4. Docker Desktop与WSL 2集成
如果您使用Docker,WSL 2与Docker Desktop的集成非常出色。安装Docker Desktop后,在设置中启用“Use the WSL 2 based engine”选项,Docker将直接在WSL 2中运行,从而获得更好的性能和资源管理。
WSL 1 与 WSL 2 的区别与选择
理解WSL 1和WSL 2之间的区别对于选择适合您需求的版本至关重要。
WSL 1 的特点:
- 架构: 基于翻译层,将Linux系统调用实时转换为Windows NT系统调用,不使用真正的Linux内核。
- 资源占用: 启动速度极快,资源占用非常小,因为它没有运行一个完整的Linux内核。
- 文件系统性能: 在跨Windows/Linux文件系统操作时(例如,从WSL访问
/mnt/c下的文件)可能表现更好。 - 兼容性: 无法运行所有Linux应用程序,特别是那些需要特定Linux内核特性或Docker的应用。
WSL 2 的特点:
- 架构: 运行一个轻量级的虚拟机,其中包含一个真正的Linux内核。这使得WSL 2更接近于一个传统的Linux虚拟机。
- 资源占用: 比WSL 1占用更多一些内存,但启动速度仍然非常快。
- 文件系统性能: 在Linux文件系统内部(例如,
~/或/home目录)的I/O性能显著优于WSL 1,接近原生Linux。但跨Windows/Linux文件系统操作时,性能可能会略有下降。 - 兼容性: 提供完整的系统调用兼容性,这意味着您可以运行更多的Linux应用程序,包括Docker、Kubernetes、FUSE等。
如何选择?
对于大多数现代开发场景,强烈推荐使用WSL 2。它提供了更好的性能、更高的兼容性,并且是运行Docker等先进开发工具的理想选择。只有在极少数情况下(例如,您需要频繁地在WSL中访问大量的Windows文件,且文件I/O是性能瓶颈),才可能考虑WSL 1。
常见问题 (FAQ)
Q1:如何知道我的WSL是WSL 1还是WSL 2?
您可以在PowerShell或命令提示符中运行wsl -l -v命令。该命令会列出所有已安装的Linux发行版及其当前运行的版本(VERSION列)。如果显示为“2”,则表示是WSL 2;如果显示为“1”,则是WSL 1。
Q2:为何我的WSL 2启动失败或出现虚拟化错误?
这通常是由于以下几个原因:
- BIOS/UEFI中未启用CPU虚拟化技术: 请参考“WSL安装前的准备工作”部分,检查并启用Intel VT-x或AMD-V。
- 未安装或未更新WSL内核更新包: 确保您已下载并运行了最新的WSL 2 Linux内核更新包(
.msi文件)。 - 未启用“虚拟机平台”Windows功能: 确保您已在PowerShell中运行
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart并重启了电脑。
Q3:如何在WSL中运行图形界面应用(GUI Apps)?
从Windows 11版本22000及更高版本开始,WSL原生支持运行Linux GUI应用程序(WSLg),无需额外配置。您只需在WSL中安装相应的GUI应用,然后在Windows“开始”菜单中即可找到并启动它。对于旧版Windows 10,则需要安装X服务器(如VcXsrv)并在WSL中进行额外配置才能运行GUI应用。
Q4:WSL中的Linux文件存储在哪里?我可以手动删除它们吗?
WSL发行版的文件系统存储在一个虚拟硬盘(VHDX文件)中,通常位于%LOCALAPPDATA%Packages目录下(例如,Ubuntu的路径可能类似于C:Users)。不建议直接手动修改、移动或删除这些文件,否则可能导致系统损坏或数据丢失。若要卸载或重置WSL发行版,应通过Windows的“应用和功能”设置,或使用wsl --unregister 命令来管理。
Q5:如何卸载一个WSL Linux发行版?
您可以通过两种方式卸载WSL发行版:
- 通过Windows设置: 前往“设置” > “应用” > “应用和功能”,找到您想要卸载的Linux发行版(例如“Ubuntu”),点击它,然后选择“卸载”。
-
通过WSL命令: 打开PowerShell或命令提示符,运行
wsl --unregister <发行版名称>。例如:wsl --unregister Ubuntu。这将完全删除该发行版及其所有数据。请谨慎使用此命令,因为它无法撤销。
总结
通过以上详细的WSL安装指南,您现在应该能够在Windows系统上成功搭建并运行Linux环境了。无论是进行Web开发、机器学习、容器化应用,还是仅仅为了体验Linux的强大命令行工具,WSL都为您提供了一个高效、便捷且深度集成的解决方案。
从简单的wsl --install命令到手动配置的每一步,我们都力求详细具体,希望能帮助您顺利完成WSL的安装之旅。充分利用WSL的优势,它将极大地提升您在Windows上的开发效率和体验。祝您在WSL的世界里探索愉快!

