VSCode SSH远程连接失败:fork资源暂不可用错误求助
问题描述
通过VSCode SSH连接服务器时,输入密码后收到删除旧日志文件的提示:/home/user/.vscode-server/.cli.e170252f76e615dec6ca2cc656aba1570769a5d39.log,随后出现以下错误:
Remote CLI generated: 3859153 Waiting for server log... main: fork: retry: Resource temporarily unavailable main: fork: fork: retry: Resource temporarily not available
相关现象:
- 此前无此问题,仅VSCode SSH连接触发该错误
- 服务器平时资源占用仅5%,但VSCode连接时CPU占用飙升至100%
- 通过Putty、PowerShell及VSCode终端可正常SSH连接,但VSCode无法打开服务器文件
- 更换其他电脑尝试,问题依旧存在
需求:仅需通过VSCode连接服务器编辑代码
可能的原因及解决方案
1. 彻底清理VSCode Server残留文件
VSCode远程连接的异常常与服务器端残留的旧版Server文件冲突有关,执行以下命令删除整个.vscode-server目录:
rm -rf ~/.vscode-server
删除后重新通过VSCode发起SSH连接,它会自动重新部署全新的Server组件。
2. 检查并调整进程数限制
fork: retry: Resource temporarily unavailable错误通常是因为进程数达到系统或用户的上限。VSCode连接服务器时会创建大量子进程,可能触发平时未触及的限制:
- 查看当前用户的进程数上限:
ulimit -u
- 查看系统全局进程数上限:
cat /proc/sys/kernel/pid_max
如果当前用户的进程数上限过低,可临时提升(仅当前会话有效):
ulimit -u 4096
若需永久调整,需联系服务器管理员修改/etc/security/limits.conf配置文件。
3. 排查安全模块限制
部分服务器的SELinux或PAM安全配置可能限制VSCode Server的进程创建行为:
- 临时关闭SELinux测试(测试完成后建议恢复):
setenforce 0
若关闭后连接恢复正常,需调整SELinux规则,允许VSCode相关进程的fork操作。
4. 降级Remote SSH插件
若问题是在最近更新Remote SSH插件后出现,可能存在版本兼容性问题:
- 在VSCode中卸载当前Remote SSH插件
- 安装旧版本插件(选择前2-3个稳定版本)
- 重新尝试SSH连接
5. 禁用自动扩展同步
VSCode连接服务器时会自动同步本地扩展到服务器端,可能导致短时间内进程激增:
- 打开VSCode设置(快捷键
Ctrl+,) - 搜索
remote.SSH.defaultExtensions,清空该配置项 - 或手动添加仅需的扩展ID,避免不必要的扩展同步
内容的提问来源于stack exchange,提问作者Felix Alexander Guerrero Polo
相关产品推荐
相关产品推荐

