一、问题现象
vscode 客户端通过ssh连接远程主机时,等待一段时间后报"未能下载VS Code 服务器(Failed to fetch)",最终连接失败,报错信息如下图所示:

二、根本原因
vccode 客户端在连接远程主机时,后台根据远程主机~/.vscode-server目录下的信息检查vscode-server的commitid和客户端当前版本对应的commitid是否一致。主要检查cli文件夹和code-${commitid}文件。~/.vscode-server目录信息如下图所示:

如果检查到commitid不一致,客户端自动下载相应版本的vscode-server,下载完成后通过scp指令拷贝到远程主机并配置相关信息。以1.99.0版本为例,下载路径如下:
https://update.code.visualstudio.com/commit:4437686ffebaf200fa4a6e6e67f735f3edf24ada/server-linux-x64/stable
当网络有问题时,无法成功下载vscode服务器,就会报错,最终导致ssh连接失败。
三、解决方法
从其它主机拷贝~/.vscode-server文件,文件目录如下图所示,将文件夹cli和文件code-4437686ffebaf200fa4a6e6e67f735f3edf24ada拷贝到远程主机的~/.vscode-server目录下即可,如果远程主机已有cli文件夹,可以备份后替换。

注意:解决方法中是1.99.0版本对应的解决方案,如果是其它版本vscode,解决思想一样