【WSL+Linux】国内网络连接微软官方服务器(或GitHub)不稳定,导致下载内核或Linux发行版时超时断开如何解决?

在CMD中使用 wsl --install 一键安装 WSL 时,遇到"与服务器的连接被重置"或中途断开,99%的原因是因为国内网络连接微软官方服务器(或 GitHub)不稳定,导致下载内核或Linux发行版时超时断开。

要彻底解决这个问题,最推荐的方法是放弃一键命令,改为"手动离线安装"。以下是具体的操作步骤:

📊 安装决策流程图

wsl --install 一键安装失败时,可以参考以下决策流程选择解决方案:
#mermaid-svg-VllhWI4ErMFSNRGc{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}@keyframes edge-animation-frame{from{stroke-dashoffset:0;}}@keyframes dash{to{stroke-dashoffset:0;}}#mermaid-svg-VllhWI4ErMFSNRGc .edge-animation-slow{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 50s linear infinite;stroke-linecap:round;}#mermaid-svg-VllhWI4ErMFSNRGc .edge-animation-fast{stroke-dasharray:9,5!important;stroke-dashoffset:900;animation:dash 20s linear infinite;stroke-linecap:round;}#mermaid-svg-VllhWI4ErMFSNRGc .error-icon{fill:#552222;}#mermaid-svg-VllhWI4ErMFSNRGc .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-VllhWI4ErMFSNRGc .edge-thickness-normal{stroke-width:1px;}#mermaid-svg-VllhWI4ErMFSNRGc .edge-thickness-thick{stroke-width:3.5px;}#mermaid-svg-VllhWI4ErMFSNRGc .edge-pattern-solid{stroke-dasharray:0;}#mermaid-svg-VllhWI4ErMFSNRGc .edge-thickness-invisible{stroke-width:0;fill:none;}#mermaid-svg-VllhWI4ErMFSNRGc .edge-pattern-dashed{stroke-dasharray:3;}#mermaid-svg-VllhWI4ErMFSNRGc .edge-pattern-dotted{stroke-dasharray:2;}#mermaid-svg-VllhWI4ErMFSNRGc .marker{fill:#333333;stroke:#333333;}#mermaid-svg-VllhWI4ErMFSNRGc .marker.cross{stroke:#333333;}#mermaid-svg-VllhWI4ErMFSNRGc svg{font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;}#mermaid-svg-VllhWI4ErMFSNRGc p{margin:0;}#mermaid-svg-VllhWI4ErMFSNRGc .label{font-family:"trebuchet ms",verdana,arial,sans-serif;color:#333;}#mermaid-svg-VllhWI4ErMFSNRGc .cluster-label text{fill:#333;}#mermaid-svg-VllhWI4ErMFSNRGc .cluster-label span{color:#333;}#mermaid-svg-VllhWI4ErMFSNRGc .cluster-label span p{background-color:transparent;}#mermaid-svg-VllhWI4ErMFSNRGc .label text,#mermaid-svg-VllhWI4ErMFSNRGc span{fill:#333;color:#333;}#mermaid-svg-VllhWI4ErMFSNRGc .node rect,#mermaid-svg-VllhWI4ErMFSNRGc .node circle,#mermaid-svg-VllhWI4ErMFSNRGc .node ellipse,#mermaid-svg-VllhWI4ErMFSNRGc .node polygon,#mermaid-svg-VllhWI4ErMFSNRGc .node path{fill:#ECECFF;stroke:#9370DB;stroke-width:1px;}#mermaid-svg-VllhWI4ErMFSNRGc .rough-node .label text,#mermaid-svg-VllhWI4ErMFSNRGc .node .label text,#mermaid-svg-VllhWI4ErMFSNRGc .image-shape .label,#mermaid-svg-VllhWI4ErMFSNRGc .icon-shape .label{text-anchor:middle;}#mermaid-svg-VllhWI4ErMFSNRGc .node .katex path{fill:#000;stroke:#000;stroke-width:1px;}#mermaid-svg-VllhWI4ErMFSNRGc .rough-node .label,#mermaid-svg-VllhWI4ErMFSNRGc .node .label,#mermaid-svg-VllhWI4ErMFSNRGc .image-shape .label,#mermaid-svg-VllhWI4ErMFSNRGc .icon-shape .label{text-align:center;}#mermaid-svg-VllhWI4ErMFSNRGc .node.clickable{cursor:pointer;}#mermaid-svg-VllhWI4ErMFSNRGc .root .anchor path{fill:#333333!important;stroke-width:0;stroke:#333333;}#mermaid-svg-VllhWI4ErMFSNRGc .arrowheadPath{fill:#333333;}#mermaid-svg-VllhWI4ErMFSNRGc .edgePath .path{stroke:#333333;stroke-width:2.0px;}#mermaid-svg-VllhWI4ErMFSNRGc .flowchart-link{stroke:#333333;fill:none;}#mermaid-svg-VllhWI4ErMFSNRGc .edgeLabel{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-VllhWI4ErMFSNRGc .edgeLabel p{background-color:rgba(232,232,232, 0.8);}#mermaid-svg-VllhWI4ErMFSNRGc .edgeLabel rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-VllhWI4ErMFSNRGc .labelBkg{background-color:rgba(232, 232, 232, 0.5);}#mermaid-svg-VllhWI4ErMFSNRGc .cluster rect{fill:#ffffde;stroke:#aaaa33;stroke-width:1px;}#mermaid-svg-VllhWI4ErMFSNRGc .cluster text{fill:#333;}#mermaid-svg-VllhWI4ErMFSNRGc .cluster span{color:#333;}#mermaid-svg-VllhWI4ErMFSNRGc div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:12px;background:hsl(80, 100%, 96.2745098039%);border:1px solid #aaaa33;border-radius:2px;pointer-events:none;z-index:100;}#mermaid-svg-VllhWI4ErMFSNRGc .flowchartTitleText{text-anchor:middle;font-size:18px;fill:#333;}#mermaid-svg-VllhWI4ErMFSNRGc rect.text{fill:none;stroke-width:0;}#mermaid-svg-VllhWI4ErMFSNRGc .icon-shape,#mermaid-svg-VllhWI4ErMFSNRGc .image-shape{background-color:rgba(232,232,232, 0.8);text-align:center;}#mermaid-svg-VllhWI4ErMFSNRGc .icon-shape p,#mermaid-svg-VllhWI4ErMFSNRGc .image-shape p{background-color:rgba(232,232,232, 0.8);padding:2px;}#mermaid-svg-VllhWI4ErMFSNRGc .icon-shape .label rect,#mermaid-svg-VllhWI4ErMFSNRGc .image-shape .label rect{opacity:0.5;background-color:rgba(232,232,232, 0.8);fill:rgba(232,232,232, 0.8);}#mermaid-svg-VllhWI4ErMFSNRGc .label-icon{display:inline-block;height:1em;overflow:visible;vertical-align:-0.125em;}#mermaid-svg-VllhWI4ErMFSNRGc .node .label-icon path{fill:currentColor;stroke:revert;stroke-width:revert;}#mermaid-svg-VllhWI4ErMFSNRGc :root{--mermaid-font-family:"trebuchet ms",verdana,arial,sans-serif;} 是



一键安装失败

(连接被重置/超时)
是否继续尝试

一键安装?
方法二:优化网络环境

  1. 为CMD配置代理

  2. 更改DNS服务器
    再次尝试

wsl --install
是否成功?
✅ 安装完成
转入手动离线安装
方法一:手动离线安装

(推荐,成功率100%)
第1步:启用Windows必备功能

  • 启用WSL功能

  • 启用虚拟机平台

  • 重启电脑
    第2步:下载并安装WSL2内核

  • 访问官方链接下载内核包

  • 双击安装wsl_update_x64.msi
    第3步:设置WSL2为默认版本

  • 管理员CMD运行

wsl --set-default-version 2
第4步:安装Linux发行版

  • 方式A:微软商店安装Ubuntu

  • 方式B:下载离线包安装
    ✅ 安装完成

设置用户名密码即可使用

流程图说明

  1. 起点:一键安装失败(连接被重置/超时)
  2. 决策点 :是否继续尝试一键安装?
    • → 使用方法二优化网络环境后重试
    • → 直接采用方法一手动离线安装
  3. 方法一流程:四个清晰步骤(启用功能→下载内核→设置版本→安装发行版)
  4. 方法二流程:优化网络后重试,若仍失败则转入手动安装

方法一:手动离线安装(最推荐,成功率 100%)

通过浏览器或下载工具手动下载所需组件,绕过 CMD 不稳定的网络下载机制。

第 1 步:启用 Windows 必备功能
  1. Win + S 搜索 cmd ,右键选择 "以管理员身份运行"

  2. 依次复制并运行以下两条命令(启用 WSL 和虚拟机平台):

    cmd 复制代码
    dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
    dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
  3. 重启电脑(这一步必须做,否则后续步骤会报错)。

第 2 步:手动下载并安装 WSL 2 内核更新包
  1. 重启后,使用浏览器(如Edge/Chrome)访问微软官方内核下载链接:
    👉 https://aka.ms/wsl2kernel)
    (如果链接跳转慢,可直接复制此直链下载:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi)
  2. 下载完成后,双击运行 wsl_update_x64.msi 进行安
第 3 步:设置 WSL 2 为默认版本

打开管理员 CMD,输入以下命令并回车:

cmd 复制代码
wsl --set-default-version 2

(如果提示"请将......启用为默认版本",请检查第 1 步的功能是否开启并重启了电脑)

第 4 步:手动下载并安装 Linux 发行版(如 Ubuntu)

不要使用 wsl --install 下载了,直接去微软商店或下载离线包:

  • 方式 A(推荐) :打开电脑自带的 Microsoft Store(微软商店) ,搜索 Ubuntu(推荐 Ubuntu 22.04 或 24.04),点击"获取/安装"。
  • 方式 B(离线包) :如果微软商店也连不上,可以用浏览器下载离线安装包:

安装完成后,在开始菜单找到 Ubuntu 并打开,设置用户名和密码即可。

常见手动安装问题排查

手动安装过程中可能会遇到以下问题,这里提供相应的排查方案:

问题现象 可能原因 解决方案
双击 MSI 无反应 1. 系统权限不足 2. 文件损坏 3. 安全软件拦截 1. 右键以管理员身份运行 2. 重新下载内核包,检查文件完整性 3. 临时关闭杀毒软件/防火墙再试
安装发行版时报错 0x80070005 权限不足或文件被占用 1. 确保使用管理员权限 运行安装程序 2. 关闭所有可能占用系统文件的程序(如虚拟机软件) 3. 尝试在安全模式下安装
商店下载慢或无法连接 微软商店服务器网络不稳定 1. 使用**方式 B(离线包)**直接下载安装 2. 更换网络环境(如使用手机热点) 3. 修改系统 DNS 为 8.8.8.88.8.4.4
运行 wsl --set-default-version 2 提示"请启用 WSL" 第 1 步的功能未正确启用或未重启 1. 确认已以管理员身份运行两条 dism.exe 命令 2. 必须重启电脑 后重试此命令 3. 在"启用或关闭 Windows 功能"中手动勾选"适用于 Linux 的 Windows 子系统"和"虚拟机平台"
安装后 Ubuntu 启动闪退 1. WSL 2 内核未正确安装 2. 虚拟化未开启 1. 重新运行第 2 步的 MSI 安装包 2. 进入 BIOS 开启 Virtualization Technology (VT-x/AMD-V) 3. 在 PowerShell 中运行 wsl --update 更新内核
离线包(.appx)安装失败 系统版本过低或架构不匹配 1. 确认 Windows 版本 ≥ 1903(x64) 2. 下载与系统架构匹配的包(通常为 x64) 3. 尝试通过微软商店安装(方式 A)
安装后无法设置用户名密码 系统区域设置或用户名冲突 1. 确保系统区域设置为中文(简体,中国) 2. 使用纯英文用户名(不含空格和特殊字符) 3. 在 PowerShell 中运行 wsl --unregister <发行版名> 后重新安装

如果以上方案仍无法解决您的问题,建议查阅 WSL 官方文档 或社区论坛寻求帮助。


方法二:优化网络环境后重试(备用方案)

如果由于环境限制必须使用 wsl --install 命令,可以尝试以下通用网络优化方法,改善与微软服务器的连接稳定性。

1. 更改 DNS 服务器(首选方案)

不稳定的 DNS 解析是导致"连接被重置"的常见原因。将 DNS 修改为公共 DNS 可能解决问题:

  1. 打开 控制面板 -> 网络和共享中心 -> 点击你正在使用的网络连接(如 WLAN 或 以太网)。

  2. 点击 属性 -> 双击 Internet 协议版本 4 (TCP/IPv4)

  3. 选择"使用下面的 DNS 服务器地址",并填入:

    • 首选 DNS 服务器:8.8.8.8 (Google Public DNS)
    • 备用 DNS 服务器:8.8.4.4114.114.114.114 (国内备用)
  4. 点击"确定"保存设置。

  5. 管理员身份 打开 CMDPowerShell ,运行以下命令刷新 DNS 缓存:

    cmd 复制代码
    ipconfig /flushdns
  6. 关闭所有 CMD/PowerShell 窗口,重新打开一个新的管理员 CMD ,再次尝试运行 wsl --install

2. 使用稳定的网络连接
  • 尝试切换网络:如果可能,连接手机热点或其他网络环境进行尝试。
  • 避开高峰时段:在网络使用低峰期(例如深夜或清晨)进行安装。
  • 暂时关闭防火墙/安全软件:某些安全软件的流量扫描可能会干扰长时间连接。可尝试暂时关闭后再试(操作后请记得重新开启)。

重要提示 :如果上述优化后 wsl --install 仍然失败,强烈建议您转而采用 【方法一:手动离线安装】,这是成功率最高、最不受网络波动影响的方式。

💡 补充排错提示

  • BIOS 虚拟化未开启 :如果安装过程中提示"虚拟机平台"无法启用,或者报错 0x80370102,请重启电脑进入 BIOS,找到 Virtualization Technology (VT-x/AMD-V) 并将其设置为 Enabled(开启)。
  • Windows 版本过低:WSL 2 需要 Windows 10 版本 1903 (x64) 或更高版本,推荐直接升级到 Windows 10 22H2 或 Windows 11 以获得最佳体验。

✅ 验证安装成功

安装完成后,请按照以下步骤验证 WSL 2 内核和 Linux 发行版是否已正确安装并运行:

  1. 打开 Ubuntu 终端

    • 在 Windows 开始菜单中搜索并打开你安装的 Ubuntu(例如 "Ubuntu 24.04")。
    • 首次打开会提示你设置用户名和密码(密码输入时不会显示,输入后按回车即可)。
  2. 验证 WSL 版本和运行状态

    • 回到 Windows 命令提示符(CMD)或 PowerShell(管理员或非管理员均可)。

    • 运行以下命令,查看已安装的 WSL 发行版及其版本和状态:

      cmd 复制代码
      wsl --list --verbose
    • 预期输出示例

      复制代码
        NAME            STATE           VERSION
      * Ubuntu-24.04    Running         2
      • STATERunning 表示正在运行,Stopped 表示已停止。
      • VERSION2 表示正在使用 WSL 2 内核。
  3. 验证 Linux 内核版本

    • Ubuntu 终端 中,运行以下命令:

      bash 复制代码
      uname -a
    • 预期输出示例

      复制代码
      Linux DESKTOP-XXXXXX 5.15.133.1-microsoft-standard-WSL2 #1 SMP ... x86_64 x86_64 x86_64 GNU/Linux
      • 输出中包含 WSL2 字样,即表示正在使用 WSL 2 内核。

验证通过标志

  • wsl --list --verbose 显示发行版版本为 2
  • uname -a 输出中包含 WSL2
  • 可以在 Ubuntu 终端中正常使用 Linux 命令(如 ls, pwd)。

如果验证失败,请检查上述安装步骤是否全部完成,或参考前面的排错提示。

相关推荐
源图客1 小时前
Claude Code基础使用
服务器·前端·数据库
川石课堂软件测试1 小时前
性能测试|Nginx中间件监控与调优
linux·python·nginx·中间件·单元测试·压力测试·harmonyos
次旅行的库1 小时前
解决ValueError: too many values to unpack (expected 2)
linux·人工智能·深度学习·机器学习·推荐算法
清晨曦月1 小时前
【从零构建分布式在线评测系统】二、Judge0服务器上的心跳程序
运维·服务器·分布式
小此方3 小时前
Re:Linux系统篇(四十二)通信篇·七:SystemV标准三部曲其之三:信号量与并发编程初步认识
linux·运维·驱动开发
JAVA面经实录91712 小时前
Linux 常用命令完整知识体系
java·linux·开发语言·汇编
酱学编程15 小时前
【从零到一实现一个 AI Agent 框架 · 第四篇】04. 任务规划:拆解复杂目标 -
服务器·网络·数据库·人工智能
艾莉丝努力练剑17 小时前
OpenCode AI 编程:Ubuntu 24.04 环境安装与使用指南
linux·服务器·网络·人工智能·tcp/ip·ubuntu
崇山峻岭之间18 小时前
Keil5输出hex转换为bin的设置
linux·运维·服务器