在服务器无网络的环境下安装 VS Code Remote-SSH 组件
在服务器无网络的环境下安装 VS Code Remote-SSH 组件,需要通过 离线包传输 + 手动配置 的方式完成。以下是具体操作步骤:
一、准备工作(在有网络的机器上操作)
1. 下载 VS Code Server 离线包
VS Code Remote-SSH 需要在服务器上自动安装 vscode-server
,但无网络时会失败。需手动下载:
- 获取服务器平台类型(在服务器执行):
uname -m # 查看架构(x86_64/arm64) lsb_release -a # 查看系统版本(Ubuntu/CentOS等)
- 下载对应版本的
vscode-server
(在能联网的电脑操作):-
打开浏览器访问(替换
COMMIT_ID
和PLATFORM
):https://update.code.visualstudio.com/commit:COMMIT_ID/server-PLATFORM/stable
COMMIT_ID
:通过本地 VS Code 的Help > About
查看PLATFORM
:根据服务器架构选择(如linux-x64
、linux-arm64
)
-
示例下载链接(适用于 x86_64 Linux):
wget https://updatualstudio.com/commit:8b617bd08fd9e3fc94d14adb8d358b56e3f72314/server-linux-x64/stable -O vscode-server.tar.gz
-
2. 下载 VS Code 扩展离线包(可选)
如果还需安装其他扩展(如 Python、C++等):
- 访问 https://marketplace.visualstudio.com/
- 搜索扩展 → 点击 “Download Extension” 获取
.vsix
文件
二、传输文件到无网服务器
方法1:U盘/移动硬盘
- 将下载的
vscode-server.tar.gz
和.vsix
文件拷贝到U盘 - 通过物理方式传输到服务器
方法2:内网共享(如果可行)
- 通过局域网共享或 SCP 直连(需服务器与某台内网机器连通):
scp vscode-server.tar.gz user@server_ip:/tmp/
三、服务器端手动安装
1. 安装 VS Code Server
# 解压到 VS Code 默认目录
mkdir -p ~/.vscode-server/bin
tar -xzf vscode-server.tar.gz -C ~/.vscode-server/bin
mv ~/.vscode-server/bin/* ~/.vscode-server/bin/COMMIT_ID # 重命名为COMMIT_ID# 创建标记文件(模拟自动安装完成)
touch ~/.vscode-server/bin/COMMIT_ID/vscode-scp-done.flag
2. 安装扩展(可选)
# 在本地 VS Code 执行(通过 Remote-SSH 连接后)
code --install-extension /path/to/extension.vsix
四、Windows 端配置
-
确保 VS Code 已安装 Remote-SSH 扩展(本地客户端需要):
- 从 https://code.visualstudio.com/download 下载离线安装包
- 或通过其他机器下载扩展包(
.vsix
)后手动安装
-
连接无网服务器:
- 按
F1
→Remote-SSH: Connect to Host
- 输入服务器IP和认证信息(密码/密钥)
- VS Code 将检测到已手动安装的
vscode-server
,直接进入远程编辑模式
- 按
五、常见问题解决
1. 连接时报错 Could not establish connection
- 原因:
vscode-server
未正确放置 - 解决:
# 在服务器检查目录结构 ls ~/.vscode-server/bin/COMMIT_ID/ # 确保包含 node、server.sh 等文件
2. 扩展依赖缺失
- 方案:提前在有网络环境下载所有依赖的
.vsix
文件,手动安装:code --install-extension ms-python.python-2023.8.0.vsix
3. 版本不匹配
- 强制使用特定版本(在 VS Code 设置中添加):
"remote.SSH.serverInstallPath": {"your_server_ip": "/home/user/.vscode-server/bin/COMMIT_ID" }
六、替代方案(无需安装 VS Code Server)
如果上述方法复杂,可改用:
- SSHFS 挂载(编辑文件通过本地 VS Code):
# Windows 端挂载 net use Z: \\sshfs\user@server_ip/home/project
- rsync 同步(手动触发文件更新):
rsync -avz ./local_code/ user@server_ip:/remote/path/
总结步骤
graph TBA[有网络环境] -->|下载| B[vscode-server.tar.gz]A -->|下载| C[扩展.vsix]B -->|U盘/SCP| D[无网服务器]C --> DD --> E[解压到 ~/.vscode-server]E --> F[VS Code 连接]
通过这种方式,即使服务器完全无网络,也能实现完整的 Remote-SSH 开发体验。