SEARCH

windows安装wsl:从入门到精通的详细指南与常见问题解答

引言:为何选择在Windows上安装WSL?

在现代软件开发和技术探索中,我们经常需要在Windows操作系统上使用Linux环境。传统的解决方案包括双启动或虚拟机,但它们往往伴随着额外的开销或复杂性。Windows Subsystem for Linux (WSL) 的出现彻底改变了这一局面,它允许开发者在不离开Windows桌面的情况下,直接运行原生Linux命令行工具、实用程序和应用程序。对于希望在Windows上无缝进行Linux开发的你来说,windows安装wsl 无疑是最佳选择。


WSL的优势:

  • 无缝集成: 在Windows文件系统和Linux文件系统之间轻松切换和访问文件。
  • 高性能: WSL 2采用轻量级虚拟机技术,提供接近原生Linux的性能。
  • 开发友好: 轻松安装和使用各种Linux开发工具链,如Node.js, Python, Docker等。
  • 资源高效: 相较于传统虚拟机,WSL占用的系统资源更少,启动速度更快。
  • 便捷管理: 直接从Microsoft Store获取并管理多个Linux发行版。

windows安装wsl:准备工作

在开始windows安装wsl之前,请确保您的系统满足以下基本要求,并进行必要的配置。

1. 确认系统版本

WSL对Windows版本有要求,特别是WSL 2。为了获得最佳体验,建议使用最新版本的Windows 10或Windows 11。

  • WSL 1: 需要Windows 10 版本 1607 (周年更新) 或更高。
  • WSL 2: 需要Windows 10 版本 1903 或更高,且内部版本号为 18362 或更高。
    对于x64系统:版本 1903 或更高,内部版本号 18362 或更高。
    对于ARM64系统:版本 2004 或更高,内部版本号 19041 或更高。

您可以通过在Windows搜索栏输入 "winver" 并按回车键来检查您的Windows版本和内部版本号。

2. 启用虚拟化技术(BIOS/UEFI设置)

WSL 2基于虚拟化技术运行,因此您的计算机的BIOS/UEFI中需要启用虚拟化功能。这通常被称为Intel VT-x或AMD-V。

  1. 重启计算机,并在启动时进入BIOS/UEFI设置界面(通常按F2, Del, F10, F12等键)。
  2. 在BIOS/UEFI设置中找到“虚拟化技术”(Virtualization Technology)或类似选项。具体位置因主板制造商而异,可能在“Advanced”(高级)、“CPU Configuration”(CPU配置)或“Security”(安全)等菜单下。
  3. 将其设置为“Enabled”(启用)
  4. 保存设置并退出BIOS/UEFI。

windows安装wsl:分步详细指南

现在,我们开始详细的windows安装wsl过程。本指南将主要围绕WSL 2进行,因为它是目前推荐的版本,性能和兼容性都更优。

步骤一:启用必要的Windows功能

首先,您需要在Windows中启用“适用于Linux的Windows子系统”和“虚拟机平台”这两个可选功能。

  1. 在Windows搜索栏中输入“启用或关闭Windows功能”并打开它。
  2. 在弹出的“Windows功能”对话框中,向下滚动并勾选“适用于Linux的Windows子系统”。
  3. 同样,勾选“虚拟机平台”(这是WSL 2所需的)。
  4. 点击“确定”按钮。Windows将应用更改,并可能要求您重启计算机以完成这些功能的启用。请务必重启。


(可选但推荐)使用PowerShell启用:
您也可以通过管理员权限的PowerShell快速启用这些功能。

右键点击“开始”按钮,选择“Windows PowerShell(管理员)”或“终端(管理员)”。
输入以下命令并按回车键:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

运行完上述命令后,请重启您的计算机

步骤二:下载并安装Linux发行版

重启后,您可以从Microsoft Store下载并安装您喜欢的Linux发行版。Ubuntu是初学者的热门选择。

  1. 打开Microsoft Store应用。
  2. 在搜索栏中输入您想要安装的Linux发行版,例如“Ubuntu”、“Debian”、“Kali Linux”等。
  3. 选择您想要的版本(例如,“Ubuntu”通常是最新LTS版本,或者“Ubuntu 22.04 LTS”等特定版本)。
  4. 点击“获取”或“安装”按钮,等待下载和安装完成。
  5. 安装完成后,点击“打开”按钮启动您的Linux发行版。第一次启动时,系统会提示您设置新的UNIX用户名和密码。请牢记这些信息,它们将用于您在Linux环境中的操作。

步骤三:设置WSL 2为默认版本

虽然现在新的Linux发行版默认会安装为WSL 2,但为了确保所有新的和现有的发行版都使用WSL 2的优势,建议将其设置为默认版本。

  1. 打开Windows PowerShell(管理员)终端(管理员)
  2. 输入以下命令并按回车键:
    wsl --set-default-version 2
  3. 您可能会看到一条消息,说明“WSL 2需要更新其内核组件。” 如果是这样,请访问https://aka.ms/wsl2kernel下载并安装最新的WSL 2 Linux内核更新包。安装完成后,再次运行上述命令。

步骤四:初始化Linux发行版

当您第一次打开安装好的Linux发行版(例如,从“开始”菜单中点击Ubuntu图标),它将完成最后的设置,并要求您创建UNIX用户账户。

  1. 等待片刻,直到命令行提示您输入“Enter new UNIX username:”。
  2. 输入您想要的用户名,然后按回车。
  3. 输入您的密码,然后按回车。请注意,当您输入密码时,屏幕上不会显示任何字符(这是Linux的常见安全特性)。
  4. 再次输入密码进行确认,然后按回车。

恭喜!您已经成功完成了windows安装wsl的全部过程,并且您的Linux环境已经准备就绪。

WSL安装后的进阶使用与管理

成功windows安装wsl后,了解如何管理和使用它将极大地提升您的工作效率。

1. 查看已安装的Linux发行版

您可以通过PowerShell或命令提示符查看所有已安装的WSL发行版及其当前运行状态和WSL版本(1或2)。

在PowerShell或命令提示符中输入:
wsl -l -v

这将列出所有发行版,并显示其名称、状态(Running/Stopped)和WSL版本。

2. 更新WSL Linux内核

Microsoft会定期发布WSL的更新,包括Linux内核。为了确保WSL的稳定性和最佳性能,请定期更新。

在PowerShell或命令提示符中输入:
wsl --update

这个命令会检查并安装最新的WSL内核更新。您也可以使用 wsl --status 查看WSL的当前状态和内核版本。

3. WSL文件系统访问

从Windows访问Linux文件:

在Windows的“文件资源管理器”地址栏中输入 \wsl$,您将看到所有已安装的Linux发行版及其文件系统。这允许您像访问普通网络共享一样访问和修改Linux中的文件。

从Linux访问Windows文件:

在您的WSL终端中,Windows的驱动器(如C盘、D盘)会自动挂载到 /mnt 目录下。例如,要访问C盘,您可以进入 /mnt/c

cd /mnt/c

4. 卸载Linux发行版

如果您不再需要某个Linux发行版,可以通过以下方式卸载它:

  1. 在Windows搜索栏中输入“应用和功能”并打开它。
  2. 在应用列表中找到您想要卸载的Linux发行版(例如“Ubuntu”)。
  3. 点击它,然后选择“卸载”。

或者,使用PowerShell:
wsl --unregister (将 替换为发行版名称,例如 "Ubuntu")
请注意,此操作会彻底删除该发行版的所有数据,不可恢复。

常见问题解答 (FAQ)

如何确认我的Windows版本是否支持WSL?

您可以通过在Windows搜索栏中输入“winver”并按回车键来查看您的Windows版本和内部版本号。WSL 2至少需要Windows 10 版本1903(内部版本号18362)或更高版本。若版本过低,您可能需要更新Windows。

为何我安装WSL后无法启动Linux发行版或遇到“Virtualization is not enabled”错误?

这通常是因为以下几个原因:

  1. BIOS/UEFI中未启用虚拟化技术。 请参照本文“准备工作”中的第二点,进入BIOS/UEFI启用Intel VT-x或AMD-V。
  2. “虚拟机平台”Windows功能未启用。 请参照本文“分步详细指南”中的第一点,确保“虚拟机平台”已被勾选并已重启。
  3. Hyper-V冲突。 如果您同时运行其他虚拟机软件(如VMware, VirtualBox),有时可能与WSL的Hyper-V组件冲突,需要调整设置或禁用其他软件的Hyper-V集成。
  4. WSL内核未更新。 运行 wsl --update 并检查是否有未安装的内核更新包(https://aka.ms/wsl2kernel)。

如何将WSL 1转换为WSL 2?

如果您之前安装的发行版是WSL 1版本,并且您想将其升级到WSL 2,可以按照以下步骤操作:

  1. 打开Windows PowerShell(管理员)终端(管理员)
  2. 运行命令 wsl -l -v 查看所有发行版及其当前版本。
  3. 运行命令 wsl --set-version 2,将 替换为您要转换的发行版名称。例如,将Ubuntu转换为WSL 2:wsl --set-version Ubuntu 2
  4. 等待转换过程完成。这可能需要一些时间,具体取决于发行版的大小。

WSL和传统的虚拟机(如VMware、VirtualBox)有什么区别?

WSL和传统虚拟机的主要区别在于它们的集成度、资源消耗和用途:

  • 集成度: WSL与Windows操作系统深度集成,可以在Linux和Windows文件系统之间无缝访问,并且可以直接从Windows终端启动Linux命令。传统虚拟机则是在一个完全隔离的环境中运行一个完整的操作系统。
  • 资源消耗: WSL 2使用轻量级虚拟机,启动更快,占用的内存和CPU资源更少,并且在不使用时会自动释放资源。传统虚拟机需要预分配大量资源,并且通常需要手动启动和关闭。
  • 用途: WSL主要面向开发者,用于运行Linux命令行工具和应用程序,进行开发、脚本编写等。传统虚拟机则更适合运行完整的图形界面Linux发行版、测试不同的操作系统或运行特定于某个操作系统的应用程序。

如何优化WSL的性能?

要优化WSL的性能,您可以尝试以下方法:

  • 确保使用WSL 2: WSL 2的性能远超WSL 1。
  • 更新WSL内核: 定期运行 wsl --update
  • 将开发项目放在WSL文件系统内: 尽可能将您的代码和项目文件放在Linux文件系统(例如,WSL发行版的主目录 ~/home/user)中,而不是直接在挂载的Windows驱动器(如 /mnt/c)中进行大量文件操作,因为跨文件系统访问会带来性能开销。
  • 配置 .wslconfig 文件: 您可以在用户根目录 (%UserProfile%) 下创建 .wslconfig 文件来配置WSL的内存、CPU核心数等,以适应您的需求。例如:
    [wsl2]
    memory=4GB
    processors=2
    swap=2GB
    localhostForwarding=true
    
    
    (请将代码放在p标签内或者使用 strong 标签强调,因为本要求不允许 pre 标签)

    [wsl2]
    memory=4GB (限制WSL使用的最大内存)
    processors=2 (限制WSL使用的CPU核心数)
    swap=2GB (设置SWAP文件大小)
    localhostForwarding=true (允许从Windows访问WSL中监听的端口)

  • 关闭不必要的Linux服务: 避免在WSL中运行过多不必要的后台服务。

总结

通过本篇详细的windows安装wsl指南,相信您已经成功地在您的Windows系统上搭建了高效且集成的Linux开发环境。WSL极大地弥合了Windows和Linux之间的鸿沟,为开发者带来了前所未有的便利。无论是前端、后端、数据科学还是系统运维,WSL都将成为您强大的开发利器。请充分利用其优势,探索无限的开发可能!

windows安装wsl