VS Code使用Remote ssh远程开发(离线版踩坑)
本文总结了VSCode离线安装及远程开发的主要坑点:1.安装时若出现窗口崩溃错误,需安装VC运行库或添加"--disable-chromium-sandbox"参数;2.服务器依赖安装包括Node.js20LTS和Python3等;3.SSH连接需配置客户端和服务器的密钥认证,修改sshd_config文件;4.离线部署可通过外网云服务器打包vscode-server,再解压到
只记录离线版坑点,常规流程其他教程里都有
一、安装vscode
软件使用同事给的现成压缩包,故省略安装过程,如有需要可留言;
如启动时报错the window terminated unexpectedly(reason:'crashed',code:'-1247483645'),原因是本地VC依赖不全,搜索“VC运行库合集.exe”,使用默认安装,修复依赖;

修复后如还报错,启动项参数加上“--disable-chromium-sandbox”,作用是禁用沙盒安全功能。

二、安装vscode server,并连接ssh
1.依赖包
以操作系统Ubuntu 20.04 LTS为例
#更新系统包列表
sudo apt update
#安装依赖项
sudo apt install -y curl wget tar git python3 python3-pip python3-venv build-essential pkg-config libssl-dev
# 安装 NodeSource 的 Node.js 20 LTS 仓库
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
# 安装 Node.js 和 npm
sudo apt-get install -y nodejs
# 验证安装
node --version
npm --version
python3 --version

2.ssh连接配置
(1)本地客户端配置
一般格式如下
Host my-ubuntu-server # 一个方便的别名
HostName your_server_ip # 服务器公网 IP 或域名
User your_username # 登录用户名
Port 22 # 如果服务器上修改了端口,这里要对应
IdentityFile ~/.ssh/your_private_key # 私钥文件的路径
(2)服务器配置
#将本地公钥配置到服务器白名单
公钥路径为C:\Users\段永泰\.ssh\id_rsa,复制文本内容后,添加到服务器~/.ssh/authorized_keys文件中,单独占据一行,保存,此处无需重启sshd服务,二者无关
#修改/etc/ssh/sshd_config内容
PermitRootLogin,如在vscode配置中使用root用户登录,需要为yes,否则改为no,作用为是否允许root用户连接
PubkeyAuthentication需要为yes,或注释掉以使用yes默认值,作用是允许密钥对认证
PasswordAuthentication需要为no,作用为禁用密码登录,注意测试完毕后需要立即改回yes并重启ssh服务
sudo sshd -t #语法检查
sudo systemctl restart sshd #语法检查通过后,重启ssh服务
sudo systemctl status sshd #检查服务
ssh your_username@your_server_ip #关闭会话前,在本地测试是否可以连接,如果配置正确并且已添加你本地公钥到服务器,执行命令后在一大串内容最后会提示连接成功
即可使用remote ssh功能,享受在服务器上开发的快感!
三、补充
如vscode server必须离线安装,我的方法是:
租个按量计费的云服务器,在外网安装vscode后(检查CommitID一定要相同),远程连接云服务器,自动安装vscode server后,使用以下命令打包到内网服务器部署,即可在内网进行VS Code远程开发:
# 一键打包
cd ~
tar -czf vscode-offline.tar.gz .vscode-server/# 上传 tar.gz 文件到目标服务器家目录
# 清理旧文件(如有)
rm -rf ~/.vscode-server# 一键解压部署
tar -xzf ~/vscode-offline.tar.gz# 创建锁文件(防止自动下载)
touch ~/.vscode-server/cli/servers/Stable-*/.*install.lock 2>/dev/null || touch ~/.vscode-server/bin/*/.*install.lock 2>/dev/null#测试,直接用 VS Code Remote-SSH 连接目标服务器
更多推荐



所有评论(0)