当前位置: 首页 > news >正文

VSCode Server 手动安装指南

文章目录

  • 背景
    • 为什么需要手动下载?
  • 手动安装
    • 第一步:下载 VSCode Server
      • 方法1:直接执行如下批处理脚本
      • 方法2:使用 PowerShell
    • 第二步:传输文件到远程 Linux 机器
      • 方法 1:使用 SCP 命令
      • 方法 2:使用 SFTP 工具
      • 方法 3:使用 PowerShell
    • 第三步:在远程 Linux 机器上安装
    • 第四步:重启 VSCode 并重新连接
    • 常见问题
      • 问题 1:下载速度慢
      • 问题 2:解压失败
      • 问题 3:权限问题
    • 验证安装成功
    • 清理

背景

为什么需要手动下载?

VSCode远程SSH连接需要在远程Linux机器上安装一个VSCode Server组件。通常情况下,VSCode会自动下载并安装这个组件,但有时会失败,原因包括:

  1. 网络问题- 远程机器无法访问VSCode更新服务器
  2. 防火墙限制- 企业网络或防火墙阻止了下载
  3. 下载超时- 网络速度慢导致下载超时
  4. 代理配置错误- 代理设置不当导致连接失败
  5. 远程机器无外网访问- 内网环境无法直接下载

当自动下载失败时,就需要手动在本地下载,然后传输到远程机器进行安装。

手动安装

在自动下载时,长时间无法成功、或反复失败,这时候看日志能看到Commit HASH(比如我这次是ce099c1ed25d9eb3076c11e4a280f3eb52b4fbeb)。依照这个HASH值来找到 server 组件。

注意:1. 使用以下脚本或命令,应把`COMMIT_HASH`的值替换为你所需要的值。2. 本次测试,本地机为`Windows`,远程机为`LinuxOS@X86`

第一步:下载 VSCode Server

在 Windows 本地运行以下任一脚本:

方法1:直接执行如下批处理脚本

# vscode-server-downloader.bat@echo off chcp65001>nulecho========================================echoVSCode Server 下载工具echo========================================echo.setCOMMIT_HASH=ce099c1ed25d9eb3076c11e4a280f3eb52b4fbebsetDOWNLOAD_URL=https://update.code.visualstudio.com/commit:%COMMIT_HASH%/server-linux-x64/stablesetOUTPUT_FILE=vscode-server-linux-x64.tar.gzecho正在下载 VSCode Server...echoCommit Hash: %COMMIT_HASH%echo下载地址: %DOWNLOAD_URL%echo输出文件: %OUTPUT_FILE% echo. REM 检查是否已安装curl wherecurl>nul2>nulif%ERRORLEVEL% NEQ0(echo[错误]未找到curl命令 echo.echo请安装curl或使用以下 PowerShell 命令手动下载:echoInvoke-WebRequest-Uri"%DOWNLOAD_URL%"-OutFile"%OUTPUT_FILE%"echo. pauseexit/b1)REM 使用curl下载curl-L-o"%OUTPUT_FILE%""%DOWNLOAD_URL%"if%ERRORLEVEL% NEQ0(echo.echo[错误]下载失败!echo请检查网络连接或稍后重试 pauseexit/b1)echo.echo========================================echo下载成功!echo========================================echo.echo文件已保存到: %CD%\%OUTPUT_FILE% echo.echo接下来的步骤:echo1. 将 %OUTPUT_FILE% 文件传输到远程Linux机器echo2. 在远程机器上执行以下命令解压:echomkdir-p~/.vscode-server/bin/%COMMIT_HASH%echotar-xzfvscode-server-linux-x64.tar.gz-C~/.vscode-server/bin/%COMMIT_HASH% --strip-components=1echo. pause

方法2:使用 PowerShell

如果批处理脚本无法运行,打开 PowerShell 并执行:

$commitHash="ce099c1ed25d9eb3076c11e4a280f3eb52b4fbeb"$downloadUrl="https://update.code.visualstudio.com/commit:$commitHash/server-linux-x64/stable"$outputFile="vscode-server-linux-x64.tar.gz"Invoke-WebRequest-Uri$downloadUrl-OutFile$outputFile

第二步:传输文件到远程 Linux 机器

使用以下任一方法将下载的vscode-server-linux-x64.tar.gz文件传输到远程机器:

方法 1:使用 SCP 命令

scpvscode-server-linux-x64.tar.gz username@remote-host:/tmp/

方法 2:使用 SFTP 工具

使用 WinSCP、FileZilla 或其他 SFTP 工具上传文件

方法 3:使用 PowerShell

scp vscode-server-linux-x64.tar.gz username@remote-host:/tmp/

第三步:在远程 Linux 机器上安装

SSH 登录到远程机器,然后执行以下命令:

# 设置变量COMMIT_HASH="ce099c1ed25d9eb3076c11e4a280f3eb52b4fbeb"# 创建目标目录mkdir-p~/.vscode-server/bin/$COMMIT_HASH# 解压文件tar-xzf/tmp/vscode-server-linux-x64.tar.gz-C~/.vscode-server/bin/$COMMIT_HASH--strip-components=1# 验证安装ls-la~/.vscode-server/bin/$COMMIT_HASH/

第四步:重启 VSCode 并重新连接

  1. 关闭 VSCode
  2. 重新打开 VSCode
  3. 尝试连接到远程 SSH 主机

常见问题

问题 1:下载速度慢

如果下载速度很慢,可以尝试:

  • 使用代理服务器
  • 更换网络环境
  • 使用国内镜像(如果有)

问题 2:解压失败

确保远程机器上安装了tar命令:

sudoapt-getinstalltar# Debian/Ubuntusudoyuminstalltar# CentOS/RHEL

问题 3:权限问题

如果遇到权限问题,可以尝试:

sudomkdir-p~/.vscode-server/bin/$COMMIT_HASHsudotar-xzf/tmp/vscode-server-linux-x64.tar.gz-C~/.vscode-server/bin/$COMMIT_HASH--strip-components=1sudochown-R$USER:$USER~/.vscode-server

验证安装成功

安装成功后,VSCode Server 的目录结构应该是:

~/.vscode-server/ └── bin/ └── ce099c1ed25d9eb3076c11e4a280f3eb52b4fbeb/ ├── bin/ ├── node/ ├── extensions/ └── ...

清理

安装完成后,可以删除临时文件:

rm/tmp/vscode-server-linux-x64.tar.gz
http://www.jsqmd.com/news/497812/

相关文章:

  • 什么是pi?下一代Agent架构?
  • Logstash与FileBeat实战指南
  • 【技术白皮书】开关柜运维的“代际跨越”:全栈数字化如何重塑一键顺控新范式
  • 线控转向系统的 Carsim 与 Simulink 联合仿真
  • CMake四、动态链接库多CMakeLists.txt版
  • d3dx10_37.dll完全免费下载修复方法分享
  • 打造可靠的 LLM 检索触发器(深度硬核),语料库统计量方法全解析,收藏这一篇就够了!
  • Obsidian 从乱码笔记到彩色知识地图:ZiweiAI 知识库 5 分钟生产力起飞
  • uni-app 跨端安全的日期解析函数
  • 一文读懂AI时代DDoS攻击的“进化论”:从暴力到智能的颠覆性变革
  • mysql面试场景题(二)
  • CMake五、动态链接库单CMakeLists.txt版
  • java毕业设计基于java+springboot的个性化智能学习系统(编号:22575176)
  • 从0到1搭建智能销售预测AI平台:AI应用架构师的全程实战指南(含代码框架)
  • 探索102汽车ESP系统仿真建模:Carsim与Simulink联合仿真之旅
  • Claude Code国内接入方案:Windows部署最新攻略,40个高阶技巧与 API 网关配置实战
  • Mysql事务面试归纳
  • 牙齿不好竟成心脑血管的“隐形杀手”|从细胞到疾病的深层剖析
  • 小型高精度电子频率计数器模块品牌推荐,小型频率计,射频频率计
  • 人形机器人轻量化研究报告:材料应用和技术路径以及产业化落地指南
  • Hermes-Agent 简明指南
  • 五大主流AI合同起草平台实测:哪款最适合法律人及企业使用?
  • 离开运维行业十年后,再次进入网络安全行业之三 Windows系统
  • 斯图尔特机器人Stewart平台并联机构仿真全记录
  • 闲鱼鱼小铺pc端下载链接与web端连接记录
  • 代码小白如何自己在Windows上养龙虾?
  • RAG 技术新突破:BookRAG 树-图融合框架深度解析(深度硬核),从入门到精通,收藏这一篇就够了!
  • 深度好文:别让AI替你决策,哪怕它很聪明
  • Bamtone全尺寸飞拍测量仪:精度与速度可兼得,打破行业悖论
  • lumenpnp4.01方型主控板改外接闭环步进电机