本文档记录在使用 Remote SSH 时可能遇到的问题并提供解决方法。
错误码
| 错误码 | 错误内容 | 解决方案 |
|---|---|---|
| 1001 | 创建目录失败 | 可能是因为磁盘空间不足或无目录的写入权限。解决方案如下:
|
| 1002 | 创建目录失败 | 同 1001 错误码。 |
| 1003 | 远程主机上启动 TRAE 服务端失败 | 检查远程主机的系统版本是否满足要求。 |
| 2001 | 下载安装包失败 | 检查网络联通性,然后重试。 |
| 2002 | 解压安装包失败 | 可能是由于安装包的下载过程被截断,导致下载的文件异常,重新安装后再尝试解压。 |
| 3001 | 远程主机上启动 TRAE 服务端失败 | 检查远程主机的系统版本是否满足要求。 |
连接超时问题
| 连接超时原因 | 解决方案 |
|---|---|
| 服务器未启动,或网络无法连接 | 在本地终端执行
|
| 远程主机名称包含大写字母 | 部分 TraeCode 客户端版本存在兼容性问题:当
|
| 不支持服务器的默认 shell | 目前,一些 shell 会导致连接异常,比如 fish。将用户的默认 shell 改成 bash 和 zsh 以解决该问题。 |
本地 ~/.ssh/config 文件位置变动 | 如果挪动过本地的 ~/.ssh/config 文件的位置,可能会遇到这个问题。将 ~/.ssh/config 文件放回原先的位置以解决该问题。 |
若以上解决方案仍无法解决你的问题,可以通过《支持》中提供的渠道联系我们。请在问题反馈中提供以下信息,以便我们尽快定位问题并协助你解决:
- TraeCode 截图(尽量截取完整的 TraeCode 界面图,以便我们分辨异常信息)。
- 日志(从输出面板复制 Remote-SSH 相关的完整日志)。

- 如果是连接超时问题,附上
ssh -vvv <host>命令的完整输出结果,我们会根据此信息定位超时的原因。ssh -vvv test # 此处会输出大量日志,请复制完整的日志
网络问题
如果 AI 报告 997 错误,这通常表示你的服务器存在网络连接问题。
执行以下命令,确认你的服务器是否能成功连接到 TRAE 的服务:
curl -vvv "https://trae.cn"
如果以上 curl 命令在执行时报错,请先解决网络问题。
环境兼容性问题
在 Linux 上,可能会由于 GLIBC 问题导致进程无法启动。
问题现象
- 你无法在对话面板中与 AI 对话。
- 服务器端存在全局注入的动态库(如安全软件、监控组件,例如
/etc/thunder/libthunder.so)。
根本原因
TRAE 服务端为了保证在老旧系统上的兼容性,自带了一个较旧版本的 libstdc++.so.6。
当系统环境中有程序(或被强制注入的库)由新版编译器编译,并依赖新版 GLIBCXX 符号时,TraeCode 自带的旧库无法满足需求,从而导致加载失败。
解决方案
- 在 Linux 服务器上执行以下命令,检查是否存在
libstdc++版本冲突。
如果命令输出类似以下内容,说明确实存在grep -r "version \`GLIBCXX_.*' not found" ~/.trae-cn-server/manager-logs/libstdc++版本冲突,继续完成以下步骤来解决该冲突。.../libstdc++.so.6: version `GLIBCXX_3.4.30' not found (required by /etc/thunder/libthunder.so) - 找到 TRAE 服务端的安装目录。
提示
该目录通常在
~/.trae-cn-server/bin/stable-<commit-id>-debian10/下。你也可以从报错日志中提取准确的路径。 - 重命名自带的
libstdc++.so.6:- 进入
lib/trae-helper目录(或报错日志中指示的包含libstdc++.so.6的目录)。 - 重命名自带的库文件。
# 示例路径,请根据实际的路径调整 cd ~/.trae-cn-server/bin/stable-*-debian10/lib/trae-helper/ # 备份并重命名自带的库文件,迫使程序使用系统的 libstdc++.so.6 mv libstdc++.so.6 libstdc++.so.6.bak - 进入
- 重启服务:
- 完全退出本地的 TraeCode。
- 重启 TraeCode。
- 尝试重新连接远程服务器。
如何使用 TraeCode 连接到 Devbox 启动的 Docker?
若要在 Devbox(远程 Linux 开发机)上启动 Docker 容器,并在本地电脑的 TraeCode 中通过 Remote SSH 进入该容器进行开发,可以按照以下步骤操作。
提示
代码块中的内容为示例,你需要将粗体内容替换为自己的实际配置。
- 确保容器内已安装并启用 OpenSSH 服务。
如果基础镜像未包含 SSH 服务,可以构建一个支持 SSH 登录(root + 密码)的镜像:
字段说明:mkdir -p temp_docker cat > temp_docker/Dockerfile <<'EOF' FROM <your_image> RUN apt-get update && apt-get install -y openssh-server RUN mkdir /var/run/sshd RUN echo 'root:password' | chpasswd RUN sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config EXPOSE 22 CMD ["/usr/sbin/sshd", "-D"] EOF cd temp_docker docker build -t ssh01 .<your_image>:你的基础镜像(如ubuntu:20.04)root:password:容器内 root 用户的密码(后续用于 SSH 登录容器)
- 在 Devbox 上启动容器,并将容器的 SSH 端口映射到 Devbox 本机的端口。
以下命令中,容器的
22端口(SSH)被映射到 Devbox 的2222端口。docker run -d -p 2222:22 ssh01 - 在本地电脑中,编辑 SSH 配置文件:
写入以下内容:~/.ssh/config
字段说明:Host devbox HostName 10.x.x.x User root Host docker-container HostName localhost User root Port 2222 ProxyJump devbox StrictHostKeyChecking no UserKnownHostsFile /dev/nulldevbox:远程开发机(跳板机)docker-container:运行在devbox上的容器ProxyJump devbox:表示先连接devbox,再从devbox访问docker-containerHostName localhost:这里的localhost指的是 Devbox 本机(因为连接已跳转到devbox上执行)
- 在本地电脑的终端中,依次测试连接:
- 执行以下命令,测试
devbox是否可被连接。password为第一步中配置的密码。
由于ssh devboxdevbox是代理 SSH,因此必须首先确保devbox的 SSH 服务已正确配置并运行,且本地电脑到devbox的网络连接畅通。 - 执行以下命令,测试
docker-container是否可被连接。
此时,会先连接ssh docker-containerdevbox,再连接localhost:2222(即devbox上的容器)。使用的是容器中设置的root:password。
- 执行以下命令,测试
- 在 TraeCode 中通过 Remote SSH 连接
docker-container,即可进入容器进行远程开发。详细步骤参考连接远程主机。