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

无法通过VS Code远程资源管理器SSH连接只读Linux服务器

解决VS Code Remote SSH连接只读权限用户失败的问题

问题分析

当使用只读权限用户通过VS Code Remote SSH连接远程Linux服务器时,VS Code会尝试在用户主目录下的.vscode-server目录创建子目录存储服务端文件,但由于目录只读导致创建失败,报错关键信息:

mkdir: cannot create directory ‘/home/airbyte/.vscode-server/bin/2cyd690cbff1569’
Creating the server install dir failed...
: Read-only file system

以下是几种可行的解决方法:

方法1:指定自定义VS Code Server存储目录

通过设置远程环境变量,让VS Code将服务端文件存储到你拥有读写权限的目录(如/tmp):

  1. 打开本地~/.ssh/config文件,找到对应服务器的配置块,添加SetRemoteEnv指令:
    Host your-server-alias
      HostName your-server-ip
      User airbyte
      SetRemoteEnv VSCODE_SERVER_DATA_DIR=/tmp/vscode-server-${USER}
    
  2. 保存配置后,重新发起VS Code Remote SSH连接,系统会自动在指定目录创建所需文件。

方法2:手动部署VS Code Server到可写目录

如果需要更灵活的控制,可以手动将VS Code Server部署到可写目录:

  1. 在本地VS Code的「帮助」→「关于」中,复制当前VS Code的版本哈希值(即报错信息中的2cyd690cbff1569)。
  2. 下载对应版本的服务端包:
    wget https://update.code.visualstudio.com/commit:2cyd690cbff1569/linux-x64/stable -O vscode-server-linux-x64.tar.gz
    
  3. 将包上传到远程服务器的可写目录:
    scp vscode-server-linux-x64.tar.gz airbyte@your-server-ip:/tmp/
    
  4. 远程登录服务器,解压包到指定路径:
    ssh airbyte@your-server-ip
    mkdir -p /tmp/vscode-server/bin/2cyd690cbff1569
    tar -xzf /tmp/vscode-server-linux-x64.tar.gz -C /tmp/vscode-server/bin/2cyd690cbff1569 --strip-components=1
    
  5. 在本地~/.ssh/config中添加环境变量指定服务端路径:
    Host your-server-alias
      HostName your-server-ip
      User airbyte
      SetRemoteEnv VSCODE_SERVER_DATA_DIR=/tmp/vscode-server
    
  6. 重新启动VS Code并连接远程服务器。

方法3:请求管理员调整权限

若上述方法无法生效,可联系服务器管理员:

  • 请求将/home/airbyte/.vscode-server目录的写入权限赋予你的用户;
  • 或让管理员提前为你部署对应版本的VS Code Server到该目录。

内容的提问来源于stack exchange,提问作者Thomas L.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 13:35:21