问题背景和描述
背景: Windows 11 下通过wsl安装了一个Ubuntu 24.04
的Windows子系统。Windows用来日常使用开发,子系统Ubuntu用来开发和调试Linux程序。
操作: 因为磁盘不够用,加装了一个SSD的磁盘。加装前只有一块256的SSD,系统分为了C、D两个盘。加装后,删除原D盘,并将C盘扩展到256G;并将加装的SSD设置为新的D盘。
现象: 在wsl的Ubuntu下启动VSCode时,进程卡死和报错,弹窗提示:The window terminated unexpectedly(reason: 'crashed ', code: -36861)
。
原因分享
根据错误提示,通常与 WSL 通信中断、系统文件损坏、索引服务冲突或资源占用过高等问题相关。结合该报错的常见触发原因和修复路径,我为你梳理出以下分步骤解决方案,按优先级排列操作:
解决方法
🔧 一、重建索引服务(最常见修复手段)
索引服务冲突是导致 VSCode 在 WSL 中崩溃的常见原因,尤其当系统或 WSL 文件出现索引错误时:
- 打开控制面板
- 按
Win + R
→ 输入control
→ 进入“控制面板”。
- 按
- 进入索引选项
- 切换到“大图标”视图 → 点击“索引选项”。
- 重建索引
- 点击“高级” → 在“索引设置”标签下 → 点击“重建” → 确认操作。
- 重启系统后测试 VSCode 是否恢复。
🛠️ 二、修复系统文件与 WSL 运行环境
系统文件损坏或 WSL 子系统异常可能中断通信:
运行 SFC 和 DISM 命令
以管理员身份启动命令提示符或 PowerShell:
1
2sfc /scannow # 扫描并修复系统文件
DISM /Online /Cleanup-Image /RestoreHealth # 修复系统映像完成后重启系统。
测试 VSCode 是否恢复。
重置 WSL
- 以管理员身份打开 PowerShell,执行以下质量
1
2
3
4
5# 注意:执行以下操作后,Ubuntu系统的数据将丢失,请谨慎操作!
wsl --shutdown # 关闭所有 WSL 实例
wsl --list --verbose # 检查分发版状态
wsl --unregister <发行版名称> # 如 Ubuntu-22.04
wsl --install -d <发行版名称> # 重新安装- 测试 VSCode 是否恢复。
🔄 三、更新关键组件与 VSCode 版本
组件版本过旧或存在兼容性问题易导致崩溃:
更新 WSL 内核
在 PowerShell 中执行:
1
wsl --update
升级 VSCode 及 Remote - WSL 扩展
- 确保 VSCode 为最新版本(检查更新)。
- 在扩展商店中更新 “Remote - WSL” 扩展。
检查显卡驱动
- 访问显卡官网(如 NVIDIA/AMD/Intel)下载并安装适用于 Win11 的最新驱动。
🧹 四、清理 VSCode 服务端残留进程
残留进程可能干扰新会话启动:
- 在 VSCode 中按
Ctrl + Shift + P
。 - 输入并选择
Kill VS Code Server on Host
。 - 选择对应的 WSL 发行版(如
Ubuntu-20.04
)。 - 重新连接 WSL,触发自动重装服务端。
⚙️ 五、调整索引范围与资源占用
索引过载或资源冲突可能引发崩溃:
- 减少索引位置
- 进入“设置” → “隐私和安全性” → “搜索 Windows” → “高级索引选项” → “修改” → 取消勾选非必要位置(如大型代码库或虚拟机文件)。
- 关闭后台高负载进程
在 WSL 终端中结束占用高的进程:
1
2top # 查看资源占用
kill -9 <PID> # 结束异常进程(如 node、python)
⚠️ 六、检查硬件兼容性与系统稳定性
硬件问题或系统更新缺陷也可能导致崩溃:
运行内存诊断
- 搜索“Windows 内存诊断” → 选择“立即重启并检查问题”。
检查硬盘健康度
在 PowerShell 执行:
1
chkdsk /f /r # 下次重启时扫描并修复磁盘
排查 Windows 系统更新
- 进入“设置” → “Windows Update” → 查看更新历史 → 卸载近期安装的可疑更新。
🚨 备用方案:系统级修复或重置
若以上步骤无效,考虑更深度的系统修复:
- 使用系统还原点
- 进入“高级启动”(开机时强制断电 3 次) → “疑难解答” → “高级选项” → “系统还原”。
- 重置 Windows 11
- 设置 → 系统 → 恢复 → “重置此电脑”(可选保留文件)。
- 重装 VSCode 并清理配置
- 卸载 VSCode → 手动删除残留配置文件夹(
%USERPROFILE%\.vscode
和%USERPROFILE%\AppData\Roaming\Code
) → 重新安装。
- 卸载 VSCode → 手动删除残留配置文件夹(
💎 推荐操作流程图
1 | graph TD |
建议你按顺序尝试前四步(索引重建、文件修复、组件更新、进程清理),多数情况下可解决问题。如仍无法恢复,再考虑系统级操作(硬件检查或重置)。每次操作后重启系统再验证 VSCode 连接状态,可更准确锁定问题环节。