You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

重装服务器后VSCode Remote SSH连接失败但直连SSH正常如何解决

问题根因

从报错日志可以判断,故障是因为VSCode Remote-SSH的远程初始化脚本使用了bash专属语法(如[[条件判断、function关键字定义函数),但脚本实际被POSIX标准的sh(dash)解析,触发语法错误导致初始化流程中断。

解决方案

  • 第一步:清理服务端残留的VSCode缓存文件
    先用SSH命令正常登录服务器,执行以下命令删除旧的远程服务端文件,避免残留损坏的配置干扰:

    rm -rf ~/.vscode-server
    

    执行完成后断开当前SSH连接。

  • 第二步:确认并修改用户默认登录shell
    重新登录服务器,执行命令查看当前用户的默认登录shell:

    echo $SHELL
    

    如果输出不是/bin/bash,执行以下命令修改默认登录shell,按提示输入对应用户密码即可:

    chsh -s /bin/bash
    

    修改完成后断开SSH连接重新登录,再次执行echo $SHELL确认配置已生效。

  • 第三步:排查shell配置文件异常
    检查用户根目录下的~/.bashrc、~/.profile、~/.bash_profile三个配置文件,删除其中强制切换到sh的配置(如exec sh、export SHELL=/bin/sh这类语句),避免登录后自动切换到sh环境。

  • 第四步:本地VSCode强制指定远程执行shell
    打开VSCode设置页,搜索Remote.SSH: Remote Shell配置项,在输入框中填入/bin/bash,强制Remote-SSH使用bash执行远程初始化脚本,避免适配问题。

所有配置完成后重启VSCode,重新发起Remote-SSH连接,插件会自动在服务端重新部署配套的服务端程序,即可正常连接。


内容的提问来源于stack exchange,提问作者Luther

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 17:09:03