remote-ftp 插件已停更且不可靠,推荐改用 sshfs 挂载或 ftp-remote-edit 插件;前者实现无感远程编辑,后者是唯一持续维护的 sftp 替代方案。

remote-ftp 插件已不可靠,不建议用于 Web 项目部署。它自 2021 年停更,依赖的 ftp 模块与当前 Node.js / Electron 不兼容,macOS Sonoma、Windows 11、Ubuntu 22.04+ 用户基本无法正常使用——不是配置问题,是底层跑不动。
remote-ftp 连不上服务器?先看是不是协议和端口对不上
常见静默失败场景:配置里写 "protocol": "ftp" 却连 22 端口,或写 "protocol": "sftp" 却填 21 端口。SFTP 走 SSH,必须用 22(除非你显式改过 sshd_config);FTP/FTPS 才走 21。插件不会报错,侧边栏直接空白。
- 终端手动验证最准:
ssh -p 22 user@host能登录,说明 SSH 层通;再试sftp -P 22 user@host,能ls出目录才算 SFTP 可用 -
"remote"必须是绝对路径,比如/var/www/html,写成html或./html就列不出文件 - 用户对远程目录只有
r-x权限(缺r--),侧边栏也为空,但控制台不提示——得开View → Developer → Toggle Developer Tools,搜remote-ftp看真实错误
remote-ftp 的“同步”不是实时双写,而是本地编辑 + 显式上传
它没有远程工作区概念,所有文件操作都基于本地副本。保存 Ctrl+S ≠ 同步到服务器,只有两种情况触发上传:
- 右键本地文件 →
Sync local -> remote - 配置了
"watch": [".*"]且"watchTimeout": 500,保存后约 500ms 延迟自动上传(断网不重试)
这意味着:改完 JS 文件保存,浏览器刷新看到的仍是旧版本,除非你确认上传已完成。CI/CD 流程中极易漏传或传错版本。
替代方案:用 sshfs 挂载,让 Atom 当成本地目录用
这才是真正稳定、无感、支持 Git 和跳转的远程编辑方式。挂好后,Atom 完全不感知网络层,编辑即生效。
- macOS:
brew install sshfs,然后sshfs user@host:/var/www/html ~/mnt/web -o follow_symlinks - Windows:装
WinFsp+SSHFS-Win,右键“Map network drive”,填sftp://user@host/var/www/html - Linux:确保用户在
fuse组,mkdir -p ~/mnt/web,再运行sshfs user@host:/var/www/html ~/mnt/web
挂好后,在 Atom 中 File → Add Project Folder 打开 ~/mnt/web 即可。注意别挂整个 /var/www 或含 node_modules 的大目录,Atom 的 chokidar 对网络文件系统支持差,容易卡死或触发 ENOTCONN 错误。
如果非要用 Atom 内置远程支持,只推荐 ftp-remote-edit
它是目前唯一还在维护、基于现代 ssh2 库实现 SFTP 的插件,支持密钥登录、代理跳转、多标签并发。
-
"Protocol"必须选SFTP(FTP/FTPS 选项实际不可用) -
"Private Key"填绝对路径,如/Users/you/.ssh/id_rsa,不能用~ -
~/.ssh/id_rsa权限必须是600(chmod 600 ~/.ssh/id_rsa),否则 SSH 库直接拒载 - 首次连接卡在
Connecting…超过 10 秒?检查服务器是否开了SFTPSubsystem(sshd_config中不能注释掉Subsystem sftp /usr/lib/openssh/sftp-server)
真正麻烦的从来不是“怎么连”,而是密钥权限、fuse 用户组、挂载点目录所有权、SSH 服务端配置这些零散但致命的细节。漏一个,整个流程就卡在 Connecting… 不动。











