资讯详情

WSL2安装失败?用稳定MSI包wsl.2.6.1.0.x64.msi一次解决

📅 2026/10/9 5:56:15 | 华诺云谱 👁 阅读
WSL2安装失败?用稳定MSI包wsl.2.6.1.0.x64.msi一次解决
先交代一下我的实际情况。我在一台Windows 11机器和一台Windows 10机器上分别装过WSL2两台都不是一帆风顺。尤其Win10那台运行wsl --install -d ubuntu-24.04时报了一串“WSL2 无法启动因为此计算机上未启用虚拟化”的错误回头检查BIOS、检查Windows功能折腾了一晚上也没个像样的说法。后来我把思路从“追最新版”转向“用稳定MSI包”改用wsl.2.6.1.0.x64.msi之后安装过程突然就顺了。这篇文章就是把我这段时间踩过的坑、试过的解决方案、以及为什么这个特定版本能救场一次性讲清楚。1. 先搞清楚为什么wsl --install安装会失败成这样1.1 “自动安装”并没有想象中那么自动很多教程会让你直接打开PowerShell输入wsl --install好像一条命令就能搞定。但这句话只说对了一半。wsl --install这条默认命令实际做的是两件事把WSL运行时以应用商店应用MSIX包的形式安装然后帮你下载并设置默认的Linux发行版。问题就出在这里——它依赖微软商店的封装和分发包。如果你用的是Windows Server、LTSC、教育版、或者公司电脑做了商店和应用白名单限制商店组件可能根本不存在或者不完整wsl --install执行到一半就静默失败。如果你用了代理或网络环境受限应用商店下载极其缓慢或者直接卡在进度条这种情况我在社区里见过不少热门词“wsl2下载慢”基本都是从这里来的。最新版WSL对Windows版本的要求也会悄悄抬升老一点的Windows 10版本跑最新WSL还没开始装就提示“功能不受支持”。而这些坑恰恰都不是硬件问题是安装方式选错了。当时我反复看到“wsl2 尚未准备就绪”“此计算机上未启用虚拟化”这类报错被绕得晕头转向。后来才明白报错信息往往只是表象真正的根源是安装链路本身不稳定。1.2 最新版不等于最适合你的版本我承认WSL最新版确实加入了很多好东西比如mirrored网络模式、更快的文件访问、内置的wsl --manage命令、更好的systemd支持。但“最新”经常意味着两种代价第一可能是预览版特性需要在特定Windows预览通道上才能完整运行第二它往往要求更高的系统基线如果系统版本不够就会用各种奇怪的报错来回绝你。所以“别装最新版”这句话并不是否定新版而是建议在安装阶段先把稳定性放在第一位。官方仓库的Release页面上每个WSL版本都有对应的MSI安装文件wsl.2.6.1.0.x64.msi就是其中之一。它的特征是不依赖商店、独立安装、功能完整而且对应WSL 2的成熟内核和稳定运行时。提示如果你当前已经因为最新版或者商店版陷入安装僵局不要急着反复卸载重试先把商店路径停掉换成MSI离线安装包往往能一步到位。2. 前置条件检查虚拟化、系统版本、Windows功能一个都不能少2.1 虚拟化到底开没开不是看一眼就行运行wsl --install -d ubuntu-24.04报“WSL2无法启动因为此计算机上未启用虚拟化”这是热词里最典型的问题。但“未启用虚拟化”背后有两层含义BIOS/UEFI层面的CPU虚拟化开关没开。Intel平台叫Intel Virtualization TechnologyVT-xAMD平台叫SVM Mode。进BIOS后找到这个选项设为Enabled并保存重启。Windows功能层面缺少“虚拟机平台”Virtual Machine Platform。WSL2本质上是运行在轻量级虚拟机里的如果没有“虚拟机平台”这个功能即使CPU支持虚拟化系统也不知道该用什么方式承载WSL2。最快的检查方法是打开“任务管理器” - “性能” - “CPU”看虚拟化是否显示“已启用”。如果这里显示“已禁用”先去BIOS处理如果显示“已启用”但WSL还是提示虚拟化问题那就重点检查Windows功能里“虚拟机平台”和“Windows虚拟机监控程序平台”是否勾选。2.2 系统版本的硬性底线Win11和Win10的WSL2安装要求其实是不同的。微软官方的基线是Windows 10版本2004build 19041及以上Windows 11所有版本均支持但这不是说符合基线就万事大吉。我实测下来Windows 10低版本build运行WSL 2.6.x会遇到内核模块加载失败的问题现象就是安装完成后启动Ubuntu闪一下终端就退出后台日志里没有任何有效输出。所以如果你还在老版本Windows 10上折腾我建议先把系统补丁更新到最新再安装MSI包。热词里的“win10离线安装wsl2”其实正好命中这个场景离线环境和老版本系统商店版是最不可靠的MSI包才是正解。2.3 功能组件怎么勾选才算标准以管理员身份打开PowerShell用下面两条命令确认必要功能是否启用Get-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux Get-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform后者的State必须是Enabled。如果没有启用执行Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -All然后重启机器。这是WSL2能否启动的最核心条件。很多人顺序失调先把发行版装上再重启或者干脆没勾选“虚拟机平台”最后全卡在“WSL2尚未准备就绪”的循环里。正确顺序一定是功能开启 - 重启 - 再装运行时和发行版。3. 核心实操用wsl.2.6.1.0.x64.msi完成全新安装3.1 下载MSI安装包的正确路径这个文件来自微软官方WSL仓库的Release页面不要从第三方论坛或网盘下载。在GitHub的microsoft/WSL仓库Releases中找到WSL 2.6.1版本下载wsl.2.6.1.0.x64.msi。核对文件名和版本号是必要的防坑动作。有相当一部分安装失败案例是因为下载到了预览渠道的WSL_xxx.msi或者文件名一致但哈希不对。下载后可以校验一下文件哈希确保和Release页面上的校验值一致再开始安装。3.2 静默安装与手动安装两种方式如果你习惯图形界面双击MSI一路Next即可。这个MSI包本身自带依赖检查逻辑比你用wsl --install自动排除故障更直观。如果机器环境是干净状态下一步再补一个wsl --update动作并不会有冲突。我推荐用命令行安装方便观察完整输出。管理员PowerShell中执行msiexec /i wsl.2.6.1.0.x64.msi /qn /norestart/qn是静默模式配合批处理在企业环境里部署很方便。装完无需立刻重启稍后统一重启即可。如果你需要指定安装目录可以使用msiexec /i wsl.2.6.1.0.x64.msi /qn MSIINSTALLDIRD:\WSL把WSL运行时本体放到D盘可以缓解C盘空间压力这也是热词“wsl2如何安装配置到d盘”涉及的一个层面。3.3 确认运行时版本别再让旧版干扰安装MSI后打开新的PowerShell或Windows Terminal执行wsl --version输出结果里应当能看到WSL版本:信息而不是显示“未安装”。如果这里仍然显示旧版本说明系统里还残留着商店版或旧内核执行wsl --update让运行时对齐到MSI包版本再执行wsl --shutdown重启WSL服务。注意wsl --version是WSL 2.0以上的命令。如果你的环境里这条命令本身都提示无效多半是运行时太老直接装MSI包是更快的出路。3.4 安装发行版从Ubuntu到第三方发行版运行时装好后安装发行版有两个路径。路径一在线安装。执行wsl --install -d Ubuntu-22.04或者换成你需要的版本比如Ubuntu-24.04。热词里有“wsl2安装ubuntu22.04”和“wsl2安装ubuntu24.04”说明这是大多数人的刚需。老一些的Ubuntu版本在WSL2里跑得更省内存新版本则软件源更新更快。我的建议是日常开发用Ubuntu 22.04稳定、资料多、兼容性最好需要较新工具链再上24.04。路径二离线安装。Windows 10离线安装WSL2或者网络受限时两种办法都可用从微软商店的官方页面手动下载.appx或.msixbundle离线包再用Add-AppxPackage命令安装。下载指定发行版的rootfs tar包通常在WSL发行版的官方发布页可以找到然后执行wsl --import MyUbuntu D:\wsl\distros\Ubuntu22.04 D:\downloads\ubuntu22.04.tar路径二的好处是发行版直接落在D盘不占C盘空间整个过程完全离线。热词里“wsl2如何安装配置到d盘”的另一种含义就是指这种wsl --import到指定目录的方式。这种方式我实际用过很多次尤其适合快速复制一个开发环境给不同机器。对于热词里提到的“wsl2安装kaki linux”这一类小众发行版原理一样只要发布方提供了rootfs tar包wsl --import就能把它当作WSL发行版注册进来。你不需要让它在商店上架也不需要等待商店更新这种自由度正是WSL2被很多开发者喜欢的原因。4. 装完后反复出现的三个问题直接对号入座4.1 “WSL2 尚未准备就绪”别再反复重启了看这三处这个报错在Win10机器上尤其常见。按顺序排查确认“虚拟机平台”已经启用并且机器重启过。这是最容易被忽略的很多人开了功能但没重启就急着重试。确认没有第三方虚拟机软件与WSL2的Hyper-V底层冲突。老版本VirtualBox或VMware可能与WSL2共存时互相干扰出现“WSL2无法启动因为此计算机上未启用虚拟化”这种误导性报错。升级这些软件或者卸载后重试。确认Windows版本补丁打全。尤其是Win10部分累计更新没有安装时VirtualMachinePlatform功能虽然显示已启用底层虚拟化层却无法正常工作。如果你用了MSI包后仍然报这个错最可能是上面第二第三条。Windows功能层和系统补丁层的隐性依赖比WSL自身的问题更加隐蔽。4.2 “wsl2下载慢”从源头绕开封堵下载慢通常发生在商店版安装发行版阶段。解决方案是绕开商店下载链路使用wsl --import方式载入发行版tar包不经过商店。给发行版配置国内软件源比如Ubuntu发行后把/etc/apt/sources.list换成国内镜像这样后续apt update和软件安装就不会继续慢下去。WSL商店版更新也可以直接换成MSI包更新避免每次微软商店网络抽风导致更新失败。这里要特别说明一个现象很多同学以为“WSL2下载慢”是微软服务器的单一原因但实际上慢的环节往往是三个叠加——商店CDN慢、DNS解析慢、以及发行版内部源慢。MSI包只能解决第一个环节发行版内部源需要你自己换。4.3 发行版闪退/无法启动的真相安装发行版后点击Launch或者执行wsl -d Ubuntu-22.04窗口闪一下就没。遇到这种问题先不要重装发行版先看两件事运行wsl --list --verbose查看发行版状态。如果状态是Stopped执行wsl --set-default 发行版名后再启动。查看C:\Users\你的用户名\AppData\Local\Temp里有没有WSL的日志。很多护眼教程不会提这个位置但在排错时这是最宝贵的线索。日志里如果出现Failed to attach to console或者Invalid argument大多是运行时版本与发行版引导文件不匹配。解决办法是wsl --update让运行时和内核对齐到2.6.1。5. 进阶配置D盘搬家、CUDA能力、多发行版共存的实用方案5.1 发行版搬到D盘不只是省C盘空间前面提过用wsl --import可以从一开始就把发行版装到D盘。但如果你已经装好了不想重来WSL 2.6.1支持在线迁移wsl --manage 发行版名 --move D:\wsl\distros\发行版名这条命令会把该发行版的虚拟磁盘搬运到D盘迁移期间发行版必须处于停止状态。迁移完成后原位置空间释放所有开发文件仍然在原路径下无需重新配置环境变量。实测下来这种迁移方式比重置再导入要省心得多适合已经配置过大量开发工具的用户。5.2 多发行版共存与切换同一台机器上装Ubuntu 22.04、24.04甚至第三方发行版都是允许的。管理要点wsl --set-default 发行版名用来设定默认发行版。登录某个发行版时用wsl -d 发行版名。注销某个发行版时用wsl --unregister 发行版名它会连带删除虚拟磁盘操作前务必先备份。我在同一台Win11机器上同时保留了Ubuntu 22.04用于日常Python开发、Ubuntu 24.04用于测试新工具链两个环境互不干扰网络配置又共享同一套WSL2网络栈。这种多发行版模式对开发环境的隔离很有价值不用再单独开虚拟机。5.3 WSL2跑CUDA两个容易忽略的前置热词里的“wsl2安装cuda”是很多做深度学习的人关心的。WSL2本身支持GPU直通这意味着你可以在Windows下跑Linux版CUDA程序而不必装双系统。但要跑通CUDA有几个前置条件容易被忽略Windows侧需要安装对应的显卡驱动并且该驱动必须支持WSL2的GPU直通。NVIDIA专门发布过支持WSL的Windows驱动分支直接去NVIDIA官网下载对应驱动即可。不要只在Linux容器里装CUDA toolkit驱动这层必须Windows驱动来完成。WSL发行版内部需要重新安装CUDA Toolkit for WSL版本且内核模块和运行时版本要与驱动匹配。验证GPU时使用nvidia-smi如果在WSL2里能正常看到GPU信息说明直通成功。有一个常被误解的点nvidia-smi在WSL里的输出和Windows下不完全一样显示的驱动版本是Windows侧驱动CUDA版本才是Linux侧toolkit版本这并不表示配置冲突。5.4 Win11下的WSL2使用体验与系统差异Win11相比Win10对WSL2的集成度更高wsl --install的成功率也明显更好。但这不代表Win11就不会踩坑。我遇到过两种情况开启“Windows虚拟机监控程序平台”后某些旧游戏的反作弊系统会拒绝运行这与WSL2的Hyper-V底层直接相关。使用mirrored网络模式时如果公司网络有严格策略DNS解析会出现反复抖动表现为WSL2里能ping通IP但解析不了域名。解决办法是在/etc/resolv.conf里手动指定可用的DNS服务器。如果你同时有开发、游戏、多网络环境的需求建议给WSL2配置不同的.wslconfig参数按需切换网络模式和内存上限而不是长期保留同一个全局配置。6. 最后的经验和忠告不要被“最新版”绑架安装WSL2这件事本质上是给Windows套一层Linux开发环境的外壳。很多安装失败的折腾不是因为你不会用而是版本和分发通道不匹配。我现在给自己装的每台机器都默认走“MSI稳定版离线rootfs导入”这个套路不再依赖商店自动安装链路。如果你现在还卡在“WSL2 无法启动”“wsl2尚未准备就绪”或者“运行wsl --install -d ubuntu-24.04时报错”这类问题上我建议你按这个顺序做一遍先检查BIOS虚拟化再启用“虚拟机平台”并重启然后下载wsl.2.6.1.0.x64.msi安装最后用wsl --import的方式装发行版到D盘。这一套走完我手上几台机器的WSL2基本都能稳定运行没有再出现过升级或重启后失效的情况。多年前我装WSL2失败时也遇到过反复尝试新版本包、电脑越装越乱的死循环后来才明白“成熟版本足够好”这个朴素道理。这也是我把这条经验整理出来的原因。如果你也在安装中折腾了很久换个思路试试这个版本大概率能在十分钟内走出困境。
📝

华诺云谱内容团队

资深建站顾问 · 行业研究员

10年+企业数字化服务经验,专注智能建站、SEO优化与品牌营销,持续输出建站技巧、行业洞察与营销干货,已帮助5000+企业实现数字化增长。

你可能需要的服务

订阅华诺云谱资讯周报

每周一封,精选建站技巧、SEO与营销干货,直达邮箱。已有 8,000+ 企业主订阅,助你少走弯路。

↑