VSCODE使用ssh远程连接时启动服务器失败问题

本文描述了在使用VisualStudioCode(VSCode)的remote-ssh功能时遇到的问题,即Waitingforserverlog...,并提供了两种解决方法:重置服务器设置和回退至旧版本或使用PortableMode。官方尚未给出明确的升级说明,用户需采取相应措施以确保连接正常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

错误情况


ping服务器的ip可通并且使用terminal可以ssh连接到远程服务器。但使用vscode的remote-ssh时,在「输出」栏出现了一直报 Waiting for server log… 的情况!
在这里插入图片描述

解决方法一


重置服务器设置,包括以下手段:

1.清理服务器端的vscode-server

#首先打开vscode,并通过下面快捷键打开命令面板
Ctrl+Shift+P
#随后搜索使用即可
Remote-SSH:Kill VsCode Server on Host

当再次使用vscode连接远程服务器时,会发现vscode在重新下载以及安装vscode-server。

2.重置本地的客户端设置
在本地文件夹打开路径C:\Users\本机用户名\.ssh
删掉下面两个文件:
在这里插入图片描述
随后重新启动vscode


解决方法二(若版本为1.86!!)

最近vscode发布了1.86版本,该版本提高了对glibc的要求,导致了旧版本的linux发行版无法继续使用remote-ssh来连接了。如cenos7Ubuntu 18.04

下面贴一段官方的更新说明:

In this milestone, we have updated the toolchains to build our desktop client. From this release onwards, VS Code desktop is only compatible with Linux distributions based on glibc 2.28 or later, and glibcxx 3.4.25 or later, such as Debian 10, RHEL 8, or Ubuntu 20.04.
If you are unable to upgrade your Linux distribution, the recommended alternative is to use our web client. If you would like to use the desktop version, then you can download the VS Code release 1.85. Depending on your platform, make sure to disable updates to stay on that version. A good recommendation is to set up the installation with Portable Mode.

然而vscode没给任何说明,直接自动更新让我浪费了一整晚才找到原因,这里分别说明以下官方的两个方法都如何实现:
1.回退版本到1.85.2,同时永久禁用更新。

  • 首先打开点击此处,下载旧版本的vscode
    在这里插入图片描述
  • 安装完成后,建议先断开网络操作(因为它可能会迅速自动更新),点击左下角「设置」,随后按下图将红框内设置修改为禁止更新即可。
    在这里插入图片描述

2.下载官方推荐的Portable Mode。流程如下:

  • 点击下载链接下载1.85.2版本的zip包,下载后解压到本地自己选择的目录下
  • 进入目录,新建data文件夹
  • 拷贝%APPDATA%\Code目录到data文件夹下,然后重命名为user-data
  • 拷贝%USERPROFILE%.vscode\extensions目录到data文件夹下
  • 在data文件夹下新建目录tmp
  • 然后给Code.exe创建一个快捷方式,使用时,点击该快捷方式即可。

上面流程引用于某乎佬:https://zhuanlan.zhihu.com/p/681066025

此时,再进入vscode的「拓展」中,将remote-ssh的重新加载降级即可。

官方回应及态度

分享github的issue中有关该问题的讨论:

问题讨论:https://github.com/microsoft/vscode/issues/203967
抱怨连连:https://github.com/microsoft/vscode/issues/203375

### 解决 VSCode 通过 SSH 远程连接失败的方法 当遇到 VSCode 使用 SSH 协议远程连接服务器出现问题,可以考虑以下几个方面来排查并解决问题。 #### 配置 SSH 客户端保持活动状态 长间无操作可能导致网络连接断开。为了防止这种情况发生,在本地计算机上的 `~/.ssh/config` 文件中配置 ServerAliveInterval 参数有助于维持会话活跃: ```bash Host * ServerAliveInterval 60 ``` 这行设置意味着每分钟发送一次信号给服务端确认客户端仍然在线[^2]。 #### 修改目标主机的 SSHD_Configuration 对于某些特定版本的操作系统和服务软件组合(如 HP-UX),可能存在兼容性问题。针对此类情况调整 `/etc/ssh/sshd_config` 中的相关选项可能是必要的。例如,如果使用的是较老版本的 OpenSSH 并且遇到了与 X11 转发有关的问题,则应确保启用了正确的转发模式,并设置了合适的参数以增强安全性或适应不同环境的要求: ```bash X11Forwarding yes X11UseLocalhost no ``` 这里将 `X11UseLocalhost` 设置为 `no` 是因为早期版本的一些实现存在安全漏洞;而现代发行版通常默认采用更严格的安全策略[^3]。 #### 更新至最新稳定版本 考虑到旧版本可能会有未修复的安全隐患或是功能缺陷,建议尽可能升级到最新的稳定版本。无论是操作系统本身还是其上运行的应用程序都应当定期更新补丁,从而获得更好的性能表现以及更高的安全保障。 #### 测试其他端口传输方式 有防火墙规则或其他因素会造成标准 TCP/IP 端口 (通常是22号端口) 的阻塞。此可尝试按照官方文档指导切换成 HTTPS 渠道来进行数据交换[^1]。
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值