-
问题背景:内网Windows机器通过SSH连接远程Linux服务器进行可视化开发。
-
尝试的方案:VS Code Remote-SSH
-
遇到的问题:离线环境安装、网络连接问题、GLIBC版本不兼容、VSCode版本与扩展兼容性问题等。
-
解决方案:手动安装VSCode Server 、配置独立环境等。
-
本地机器:Windows 内网环境
-
远程服务器:CentOS 7.9 Linux
-
网络状态:完全离线,无法连接外网
-
目标:实现可视化远程开发
**问题1:**离线环境无法自动下载 VS Code Server
步骤 1:获取 Commit ID
vscode 里面 help(帮助) > about(关于) 里面找到
步骤 2:下载对应版本
在有网络的机器下载此文件,如何复制到内网机器
# 下载链接格式
https://update.code.visualstudio.com/commit:COMMIT_ID/server-linux-x64/stable
步骤 3:传输到服务器
Python HTTP 服务器
bash
cd 文件所在目录
# 发送方
python -m http.server 8000
# 接收方
curl "http://发送方IP:8000/vscode-server-linux-x64.tar.gz" -o /tmp/vscode-server.tar.gz
步骤 4:解压安装
bash
curl "http://内网机器ip:8000/vscode-server-linux-x64.tar.gz" -o /tmp/vscode-server-linux-x64.tar.gz
COMMIT_ID="你的commit_id"
mkdir -p ~/.vscode-server/bin/$COMMIT_ID
tar -xzf /tmp/vscode-server-linux-x64.tar.gz -C ~/.vscode-server/bin/$COMMIT_ID --strip-components=1
chmod +x ~/.vscode-server/bin/$COMMIT_ID/bin/code-server
**问题2:**遇到新问题:GLIBC 版本不兼容
bash
/root/.vscode-server/bin/xxx/node: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.21' not found
根本原因:CentOS 7.9 系统版本较老,GLIBC 版本过低,无法运行新版 VS Code Server。
解决方案:
1. 旧版 VS Code + 旧版扩展方案
下载兼容的 VS Code 1.52.1:
-
从 VS Code 官网下载旧版本https://code.visualstudio.com/docs/supporting/faq#_previous-release-versions
bashWindows x64 压缩 https://update.code.visualstudio.com/{version}/win32-x64-archive/stable
-
配套下载旧版 Remote-SSH 扩展(0.62.x 版本)https://marketplace.visualstudio.com/_apis/public/gallery/publishers/ms-vscode-remote/vsextensions/remote-ssh/0.62.0/vspackage
问题:扩展版本兼容性警告
bash
Unable to install extension 'ms-vscode-remote.remote-ssh' as it is not compatible with VS Code 1.52.1
解决方案:
-
手动下载兼容的旧版扩展(.vsix 文件)
-
通过
Extensions: Install from VSIX
安装
问题3:删除之前的服务器配置,重新配置文件
首先 命令行通过ssh连接远程服务器
bash
ssh -p 端口 user@ip
然后删除之前整个 vsocde-server目录
bash
rm -rf ~/.vscode-server
接下来解压安装:
步骤 1:获取 Commit ID
vscode 里面 help(帮助) > about(关于) 里面找到
步骤 2:下载对应版本
在有网络的机器下载此文件,然后复制到内网机器
# 下载链接格式
https://update.code.visualstudio.com/commit:COMMIT_ID/server-linux-x64/stable
步骤 3:传输到服务器
Python HTTP 服务器
bash
cd 文件所在目录
# 发送方
python -m http.server 8000
# 接收方
curl "http://发送方IP:8000/vscode-server-linux-x64.tar.gz" -o /tmp/vscode-server.tar.gz
步骤 4:解压安装
注意,老版本vscode文件目录不是 code-server 而是 code
bash
curl "http://内网机器ip:8000/vscode-server-linux-x64.tar.gz" -o /tmp/vscode-server-linux-x64.tar.gz
COMMIT_ID="你的commit_id"
mkdir -p ~/.vscode-server/bin/$COMMIT_ID
tar -xzf /tmp/vscode-server-linux-x64.tar.gz -C ~/.vscode-server/bin/$COMMIT_ID --strip-components=1
chmod +x ~/.vscode-server/bin/$COMMIT_ID/bin/code
验证安装
bash
ls -la ~/.vscode-server/bin/$COMMIT_ID/bin
ls -la ~/.vscode-server/bin/$COMMIT_ID/bin/code