【绕过 vscode-server】用 SSHFS SFTP 实现本地远程开发
2026/6/10 7:43:46 网站建设 项目流程

前言

  • 最近项目组的其他朋友们总是在吐槽使用vscode-ssh远程的时候老是需要重复下载vscode-server的问题,抛开其下载巨慢的问题,vscode-server在部分底端板卡上也是占用巨大,对开发还是影响巨大的。
  • 食用本文前推荐配置基础ssh操作,包含密码和ssh重命名
    • 【SSH 免密登录全流程】Windows Linux 通用方案
  • 本文分别从Windows端和Linux端,分别提出用SSHFS/GVFS将远程目录挂载到本地,用本地VSCode直接开发,从而绕过Remote-SSHvscode-server

Windows端

1-1 前置下载
1-1-1 WinFsp
  • 官网地址:https://winfsp.dev/
  • 点击下载.msi文件,双击全部保持默认即可
1-1-2 SSHFS-Win
  • 安装时 WinFsp 需要先安装,否则 SSHFS-Win 会报错。
  • GitHub 地址:https://github.com/billziss-gh/sshfs-win/releases
  • windows11直接选择x64.msi即可,和上面的WinFsp安装一样,直接双击全部保持默认即可

1-2 挂载
  • 我们通过下述指令把远程直接挂载在本地
net use X: \\sshfs\root@192.168.3.5

  • 连接成功后我们可以直接通过下述指令查看
net use

  • 当然你也可以在命令访问的时候直接指定密码和用户名
net use X: \\sshfs\root@192.168.3.5 %PASS% /user:root

1-3 连接
  • 我们就可以直接通过访问盘符的方式访问挂载在本地的远程
X:

  • 这时候我们使用code .就可以使用本地的vscode访问远程的文件了(直接绕开vscode-server
code .

1-4 取消挂载
  • 推荐回到其他盘符,然后取消挂载
net use X: /delete

1-5 一键脚本
  • 把下述脚本改为bat,直接双击运行即可挂载远程并且打开vscode
@echo off set PASS=你的密码 net use X: /delete /y >nul 2>&1 net use X: \\sshfs\root@192.168.3.5 %PASS% /user:root code X:\

2 Linux端

2-1 法一:GVFS(GNOME Virtual File System)+ sftp 协议
  • 打开你的文件资源管理器

  • 选择

  • 在出现的选框终输入

sftp://nvidia@192.168.10.170/
  • 右键本地终端打开

  • 此时 GVFS 会在/run/user/$UID/gvfs/下生成虚拟挂载入口(FUSE 风格用户态文件系统),这时候可以直接code .,用本地的vscode访问挂载在本地的远程端


2-2 法二:sshfs
2-2-1 安装
sudoaptupdatesudoaptinstallsshfs
2-2-2 创建挂载点
mkdir-p~/rdkx5
2-2-3 挂载
sshfs root@192.168.3.5:/ ~/rdkx5
  • 进阶参数
sshfs-ocache=yes,compression=no root@192.168.3.5:/ ~/rdkx5
  • -o(options):“挂载参数”,用来调整行为
  • cache=yes:开启缓存
  • compression=no:关闭压缩传输
2-2-4 访问
cd~/rdkx5
2-2-5 卸载
fusermount-u~/rdkx5
2-3 对比
特性GVFS SFTPsshfs
是否真正 mount否(虚拟文件系统)是(FUSE mount)
可在 CLI 直接访问不方便完全正常
稳定性中等
性能一般更好
GUI 集成更好还行
2-4 一键脚本
#!/bin/bash# =========================# 配置区# =========================REMOTE_USER="root"REMOTE_HOST="192.168.3.5"REMOTE_PATH="/"LOCAL_MOUNT="$HOME/rdkx5"# =========================# 卸载旧挂载(防止重复挂载)# =========================ifmountpoint-q"$LOCAL_MOUNT";thenecho"[INFO] 已检测到挂载点,正在卸载..."fusermount-u"$LOCAL_MOUNT"2>/dev/null||umount"$LOCAL_MOUNT"fi# =========================# 创建挂载目录# =========================mkdir-p"$LOCAL_MOUNT"# =========================# 执行 sshfs 挂载# =========================echo"[INFO] 正在挂载远程目录..."sshfs-oreconnect,ServerAliveInterval=15,ServerAliveCountMax=3,\cache=yes,compression=no\${REMOTE_USER}@${REMOTE_HOST}:${REMOTE_PATH}\"$LOCAL_MOUNT"# =========================# 检查结果# =========================if[$?-eq0];thenecho"[SUCCESS] 挂载成功:$LOCAL_MOUNT"cd"$LOCAL_MOUNT"||exit# 自动打开 VSCodecode.elseecho"[ERROR] 挂载失败"exit1fi

总结

  • 本文分别从Windows端和Linux端,分别提出用SSHFS/GVFS将远程目录挂载到本地,用本地VSCode直接开发,从而绕过Remote-SSHvscode-server
  • 如有错误,欢迎指出!
  • 感谢阅读!

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询