离线安装与使用 vscode Remote SSH插件
下载资源包
-
下载插件包 Remote-SSH

下载文件重命名成 .vsix 后缀,不然离线安装不了
-
下载 vscode-server
在远程主机上查看对应的Linux 主机的架构
bash
$ uname -m
x86_64
x86_64 架构:https://update.code.visualstudio.com/commit:${commit_id}/server-linux-x64/stable
aarch64 架构:https://update.code.visualstudio.com/commit:${commit_id}/server-linux-arm64/stable
commit_id 要和本地安装的版本一致的 help -> about

Commit: 08d4889f9ec4a1685d257b9b95de036c8e1ce1e5
对应的下载链接是
配置环境
-
配置 ssh 免密钥登录
参考文章 https://blog.csdn.net/modelmd/article/details/170293629
-
scp 上传资源包到远程主机
bash
$ scp /home/scd/Downloads/vscode-server-linux-x64.tar.gz ucloud:/home/ubuntu
ucloud 就是之前 ~/.ssh/config 配置的Host 别名
- 在远程主机执行安装命令
bash
# 替换为你实际的 Commit ID
COMMIT_ID=08d4889f9ec4a1685d257b9b95de036c8e1ce1e5
# 创建官方要求的目录结构
mkdir -p ~/.vscode-server/cli/servers/Stable-${COMMIT_ID}/server
# 解压压缩包到指定目录
tar -zxf vscode-server-linux-x64.tar.gz
mv vscode-server-linux-x64/* ~/.vscode-server/cli/servers/Stable-${COMMIT_ID}/server/
# 严格设置权限(权限错误会导致免密认证失败)
chmod -R 700 ~/.vscode-server/
检查对应的目录是否有文件
bash
$ ll ~/.vscode-server/cli/servers/Stable-08d4889f9ec4a1685d257b9b95de036c8e1ce1e5/server/
total 120872
drwx------ 6 ubuntu ubuntu 4096 Nov 8 19:52 ./
drwx------ 3 ubuntu ubuntu 4096 Nov 8 19:52 ../
-rwx------ 1 ubuntu ubuntu 13380 Aug 25 22:37 LICENSE*
drwx------ 4 ubuntu ubuntu 4096 Aug 25 22:44 bin/
drwx------ 38 ubuntu ubuntu 4096 Aug 25 22:44 extensions/
-rwx------ 1 ubuntu ubuntu 123656816 Jul 29 06:36 node*
drwx------ 96 ubuntu ubuntu 4096 Aug 25 22:44 node_modules/
drwx------ 3 ubuntu ubuntu 4096 Aug 25 22:44 out/
-rwx------ 1 ubuntu ubuntu 748 Aug 25 22:35 package.json*
-rwx------ 1 ubuntu ubuntu 65797 Aug 25 22:37 product.json*
- 本地vscode 配置对应的开发远程主机
点击插件的设置按钮 搜索 Local Server Download 选项将其关闭,同时把 VSCode 自身的更新模式改为手动,避免自动更新后版本不匹配


点击左下角的图标

选择 Connect to Host之后 会加载本地 ~/.ssh/config 配置的主机 Host

显示正在打开远程 Opening Remote,加载成功左下角会显示 SSH

远程开发的实现原理

文档 https://code.visualstudio.com/docs/remote/remote-overview
- 本地只有一个UI界面的作用
- 插件需要重新安装一下,插件是在远程的机器运行
- 代码也是在远程机器上,打开文件也是读取远程机器的文件列表

点击 Install in SSH 将插件安装到远程
bash
$ find /home/ubuntu/ -name python
/home/ubuntu/.vscode-server/extensions/ms-python.python-2026.10.0-linux-x64/python_files/lib/jedilsp/parso/python
/home/ubuntu/.vscode-server/extensions/ms-python.python-2026.10.0-linux-x64/python_files/lib/python
/home/ubuntu/.vscode-server/extensions/ms-python.vscode-pylance-2026.4.1/dist/typeshed-fallback/stubs/tensorflow/tensorflow/python