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

VSCode 1.100.3无法连接GLIBC<2.28的远程主机,如何恢复连接?

解决VSCode 1.100.3无法连接GLIBC<2.28远程机器的方案

以下是几个可行的解决方案,按推荐优先级排序:

1. 自定义编译VS Code Server(适配远程机器环境)

由于官方预构建的Server从1.99版本开始要求GLIBC 2.28+,你可以在远程机器上自行编译匹配本地VSCode版本的Server,完全适配旧系统:

  • 在远程机器上克隆VS Code Server源码仓库,切换到与本地1.100.3对应的标签版本
  • 安装编译依赖:Node.js 18.x+、Python 3.8+、gcc/g等C工具链
  • 执行编译命令(根据远程机器架构调整,比如x64用server-linux-x64,arm64用server-linux-arm64):
    yarn install && yarn run server-linux-x64
    
  • 编译完成后,找到生成的vscode-server目录,记录其绝对路径
  • 在本地VSCode的Remote-SSH配置中添加路径映射:
    "remote.SSH.serverInstallPath": {
      "你的远程机器别名/IP": "/远程机器上自定义server的绝对路径"
    }
    
  • 重新发起SSH连接,VSCode会自动使用你编译的适配版Server

2. 配置sysroot兼容旧系统

按照官方说明,通过指定包含高版本GLIBC和libstdc++的sysroot,让Server在旧系统上运行:

  • 在远程机器上准备一个sysroot目录,确保其中包含GLIBC≥2.28和libstdc++≥3.4.25(可从Ubuntu 20.04、Debian 10等兼容发行版的镜像中提取完整根文件系统)
  • 在本地VSCode的settings.json中添加环境变量配置,让Server启动时加载sysroot:
    "remote.SSH.serverArgs": [
      "--env", "LD_LIBRARY_PATH=/path/to/sysroot/usr/lib:/path/to/sysroot/lib:$LD_LIBRARY_PATH",
      "--env", "PATH=/path/to/sysroot/usr/bin:$PATH"
    ]
    
  • 替换/path/to/sysroot为远程机器上实际的sysroot目录路径,确保权限可访问

3. 修复旧版VSCode在Mac arm64上的崩溃问题

若想回退到1.98及以下版本(这些版本的预构建Server兼容GLIBC<2.28),可以尝试以下方法解决崩溃:

  • 确保下载的是Mac arm64的通用二进制版本,避免下载仅x86_64的安装包
  • 启用Rosetta 2运行旧版VSCode:右键点击VSCode图标→「显示简介」→勾选「使用Rosetta打开」
  • 临时关闭部分系统完整性保护(SIP):重启Mac到恢复模式,执行csrutil enable --without debug,重启后再运行旧版VSCode(测试完成后建议恢复SIP)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.12 22:12:48