【绕过 vscode-server】用 SSHFS SFTP 实现本地远程开发

前言

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

Windows端

1-1 前置下载
1-1-1 WinFsp
1-1-2 SSHFS-Win

1-2 挂载
  • 我们通过下述指令把远程直接挂载在本地
cmd 复制代码
net use X: \\sshfs\root@192.168.3.5
  • 连接成功后我们可以直接通过下述指令查看
cmd 复制代码
net use
  • 当然你也可以在命令访问的时候直接指定密码和用户名
cmd 复制代码
net use X: \\sshfs\root@192.168.3.5 %PASS% /user:root

1-3 连接
  • 我们就可以直接通过访问盘符的方式访问挂载在本地的远程
cmd 复制代码
X:
  • 这时候我们使用code .就可以使用本地的vscode访问远程的文件了(直接绕开vscode-server
cmd 复制代码
code .

1-4 取消挂载
  • 推荐回到其他盘符,然后取消挂载
cmd 复制代码
net use X: /delete
1-5 一键脚本
  • 把下述脚本改为bat,直接双击运行即可挂载远程并且打开vscode
bat 复制代码
@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 安装
bash 复制代码
sudo apt update
sudo apt install sshfs
2-2-2 创建挂载点
bash 复制代码
mkdir -p ~/rdkx5
2-2-3 挂载
bash 复制代码
sshfs root@192.168.3.5:/ ~/rdkx5
  • 进阶参数
bash 复制代码
sshfs -o cache=yes,compression=no root@192.168.3.5:/ ~/rdkx5
  • -o(options):"挂载参数",用来调整行为
  • cache=yes:开启缓存
  • compression=no:关闭压缩传输
2-2-4 访问
bash 复制代码
cd ~/rdkx5
2-2-5 卸载
bash 复制代码
fusermount -u ~/rdkx5
2-3 对比
特性 GVFS SFTP sshfs
是否真正 mount 否(虚拟文件系统) 是(FUSE mount)
可在 CLI 直接访问 不方便 完全正常
稳定性 中等
性能 一般 更好
GUI 集成 更好 还行
2-4 一键脚本
bash 复制代码
#!/bin/bash

# =========================
# 配置区
# =========================
REMOTE_USER="root"
REMOTE_HOST="192.168.3.5"
REMOTE_PATH="/"
LOCAL_MOUNT="$HOME/rdkx5"

# =========================
# 卸载旧挂载(防止重复挂载)
# =========================
if mountpoint -q "$LOCAL_MOUNT"; then
    echo "[INFO] 已检测到挂载点,正在卸载..."
    fusermount -u "$LOCAL_MOUNT" 2>/dev/null || umount "$LOCAL_MOUNT"
fi

# =========================
# 创建挂载目录
# =========================
mkdir -p "$LOCAL_MOUNT"

# =========================
# 执行 sshfs 挂载
# =========================
echo "[INFO] 正在挂载远程目录..."

sshfs -o reconnect,ServerAliveInterval=15,ServerAliveCountMax=3,\
cache=yes,compression=no \
${REMOTE_USER}@${REMOTE_HOST}:${REMOTE_PATH} \
"$LOCAL_MOUNT"

# =========================
# 检查结果
# =========================
if [ $? -eq 0 ]; then
    echo "[SUCCESS] 挂载成功:$LOCAL_MOUNT"
    cd "$LOCAL_MOUNT" || exit

    # 自动打开 VSCode
    code .
else
    echo "[ERROR] 挂载失败"
    exit 1
fi

总结

  • 本文分别从Windows端和Linux端,分别提出用 SSHFS / GVFS 将远程目录挂载到本地,用本地 VSCode 直接开发,从而绕过 Remote-SSHvscode-server
  • 如有错误,欢迎指出!
  • 感谢阅读!
相关推荐
AI的探索之旅15 小时前
AI辅助原理图评审:电源去耦、BOOT引脚、VCAP——19项逐一核查,遗漏?不存在的
人工智能·vscode·嵌入式硬件
qq_4523962317 小时前
第二篇:《Go 开发环境搭建:SDK、IDE、Module 与 Hello World》
开发语言·ide·golang
●VON17 小时前
鸿蒙 PC Markdown 编辑器界面语言切换:跟随系统、简体中文与 English 的完整状态闭环
华为·编辑器·harmonyos·鸿蒙
可视化运维管理爱好者18 小时前
nVisual Studio:数据中心网络智能规划设计工具
网络·ide·visual studio
李顿波19 小时前
开发全流程:Ai 简单指导
ide
●VON19 小时前
鸿蒙 PC Markdown 编辑器内部隐私与安全评审
安全·华为·编辑器·harmonyos·鸿蒙
●VON20 小时前
鸿蒙 PC Markdown 编辑器离线专业渲染管线
华为·编辑器·harmonyos·鸿蒙
这就是佬们吗1 天前
Python入门③-运算符、条件与循环
开发语言·数据库·vscode·python·pycharm·编辑器
2501_915921431 天前
从零开始学 Swift iOS 开发 iOS应用入门
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
●VON1 天前
鸿蒙 PC Markdown 编辑器链接补全与离线校验:中文路径、标题锚点与授权边界
华为·编辑器·harmonyos·鸿蒙