VSCode连接远程服务器时无法下载或上传vscode-server

文章讲述了作者在Windows10系统下连接内网Linux服务器时遇到的问题,包括VSCode连接时反复提示密码、安装过程冲突以及下载/上传困难。作者提供了删除lockfile和使用WinSCP手动上传解决步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

诸神缄默不语-个人优快云博文目录

我是用Windows 10系统连接Linux云服务器。是我们实验室的内网服务器,所以服务器不能连外网,在公网上信号也不好。

1. 前置bug

其实一开始的问题是用VSCode连接远程服务器时可以弹出输入密码界面,输入密码后又会显示要输入密码,如此重复多次,报错信息是:

[14:23:40.140] Got password response
[14:23:40.140] "install" wrote data to terminal: "***********"
[14:23:40.167] > 
[14:23:40.379] > omit: running
[14:23:40.419] > Acquiring lock on /home/user_name/.vscode-server/bin/omit
> omitvscode-remote-lock.user_name.omit
[14:23:40.442] > Installation already in progress...
> If you continue to see this message, you can try toggling the remote.SSH.useFloc
> k setting
> omit: start
> exitCode==24==
> listeningOn====
> osReleaseId==ubuntu==
> arch==x86_64==
> vscodeArch==x64==
> bitness==64==
> tmpDir==/run/user/omit==
> platform==linux==
> unpackResult====
> didLocalDownload==0==
> downloadTime====
> installTime====
> extInstallTime====
> serverStartTime====
> omit: end
[14:23:40.443] Received install output: 
exitCode==24==
listeningOn====
osReleaseId==ubuntu==
arch==x86_64==
vscodeArch==x64==
bitness==64==
tmpDir==/run/user/omit==
platform==linux==
unpackResult====
didLocalDownload==0==
downloadTime====
installTime====
extInstallTime====
serverStartTime====

[14:23:40.443] Server installation process already in progress - waiting and retrying
[14:23:41.462] Running script with connection command: "C:\Windows\System32\OpenSSH\ssh.exe" -T -D my_port -p remote_port "user_name@IP地址" bash
[14:23:41.464] Terminal shell path: C:\WINDOWS\System32\cmd.exe
[14:23:41.760] > ]0;C:\WINDOWS\System32\cmd.exe
[14:23:41.761] Got some output, clearing connection timeout
[14:23:41.881] > user_name@IP地址's password: 
[14:23:41.882] Showing password prompt
[14:23:41.912] "install" terminal command done
[14:23:41.913] Install terminal quit with output:

这个问题应该是因为之前远程服务器上的VSCode Server安装或更新过程中出现了冲突。这可能是因为之前的安装或更新过程没有正常完成,导致了一个锁文件(lock file)的存在。锁文件存在的目的是为了防止同时运行多个安装或更新进程。
但是我无法验证具体的错误原因。但是可以解决:我是用putty登录到服务器后直接删除了.vscode-server这个文件夹。
也可以考虑直接删掉这个lock file。

2. VSCode连接远程服务器时无法下载或上传vscode-server

具体表现形式是:输入密码后先报信息显示正在下载vscode-server(Setting up SSH Host IP地址: Downloading VS Code Server locally),随后显示正在用scp转移vscode-server(Setting up SSH Host IP地址: Copying VS Code Server to host with scp),但是过了很久(据我经验,超过10分钟就是出错了)都没有反应。
这应该是网络连接问题造成的,如果能够连接外网,应该会直接下载vscode-server;如果和本地网络能够正常连接,就会先将vscode-server下载到本地,然后用scp上传到远程服务器,我应该是因为端口不是scp默认端口而是自定义端口所以上传失败。只有这两种情况全都无法正常实现,才会导致出现这种情况。

解决方案:在Output中可以查看Remote - SSH日志,可以发现vscode-server已经下载到了本地(C:\Users\Administrator\AppData\Local\Temp\vscode_server_omit位置),是vscode-server.tar.gz和vscode-server.tar.gz.done两个文件。
注意需要在VSCode尝试上传vscode-server时,使用scp将这两个文件上传到服务器/home/user_name/.vscode-server/bin/commit_id下。这个文件夹一般在这个过程中会自动新建,已经存储了一个大小为0的vscode-server.tar.gz文件。如果没有新建,commit_id是本地VSCode的commit ID,点击Help - About,其中commit项的值就是,可以点击copy复制所有信息。

我是用WinSCP传的,直接覆盖了那个大小为0的vscode-server.tar.gz文件。另外就是建议权限全开。
如果WinSCP没有显示隐藏文件夹的话,这么设置:选项-选项-面板-显示隐藏文件
在这里插入图片描述

注意如果不在VSCode自己上传时就把tar.gz文件放到这个文件夹下的话,VSCode会报错安装失败,然后把这个压缩包直接删掉。属于白干。
接下来VSCode就会自己解压压缩包并安装了,然后就可以正常使用远程服务器了。

(之所以这次用的是WinSCP,上一节用的是putty,是因为我换本地电脑了,而且我喜欢用WinSCP这种图文界面传文件。具体用啥不重要,你全程用powershell都没关系)

压缩包如果没有自动下载成功也可以手动下载:

  • arm版本,下载vscode-server-linux-arm64.tar.gz
    https://update.code.visualstudio.com/commit:${commitID}/server-linux-arm64/stable
  • x86版本,下载vscode-server-linux-x64.tar.gz
    https://update.code.visualstudio.com/commit:${commitID}/server-linux-x64/stable

3. 本文撰写过程中参考的网络资料

  1. 连接远端开发环境时,一直处于"Setting up SSH Host xxx: Downloading VS Code Server locally"超过10分钟以上,如何解决?_AI开发平台ModelArts_常见问题_Notebook(新版)_VS Code连接开发环境失败常见问题_华为云:这篇是跟我的问题完全对口的解决方案,我主要参考了这篇文章。不过我是直奔图形化工具了,这篇主要是用terminal解决的
  2. 解决 Winscp 不显示隐藏文件的办法-腾讯云开发者社区-腾讯云
<think>嗯,用户想了解如何通过VSCode将项目文件上传远程服务器。我需要先整理一下步骤,确保每一步都清晰。首先,根据之前看到的引用内容,连接远程服务器是前提,所以第一步应该是安装Remote-SSH扩展并配置连接。然后,用户可能需要知道如何上传单个文件者整个文件夹。 记得引用里提到,可以通过拖拽者右键菜单上传文件,但如果是大文件可能速度慢,需要提醒用户注意。另外,用户问的是上传项目文件,可能涉及多个文件和目录,所以需要说明如何操作整个文件夹。可能需要提到使用资源管理器直接拖放整个文件夹到远程目录,者使用SCP命令等其他方法。 还要考虑用户可能遇到的问题,比如扩展安装失败连接问题,这时候需要引用相关的引用内容,比如引用[3]提到的安装Remote SSH的步骤,引用[4]提到的大文件上传的问题。需要建议用户如果遇到大文件可以考虑其他工具,但VSCode的方法对于常规项目文件已经足够。 另外,要确保步骤的顺序正确,先连接服务器,再上传文件。同时,可能用户对下载文件也有兴趣,但问题主要是上传,所以可以简要提一下下载的方法,但重点放在上传上。最后,要检查是否有遗漏的步骤,比如权限问题者路径问题,这些可能需要提醒用户注意。</think>### 通过VSCode上传项目文件到远程服务器的分步教程 #### 1. 配置远程连接 - **安装Remote-SSH扩展** 打开VSCode,在扩展商店搜索"Remote - SSH",安装微软官方扩展[^3] - **添加服务器配置** 按`F1`打开命令面板 → 输入`Remote-SSH: Add New SSH Host` → 按`用户名@IP:端口`格式输入服务器信息(例如`root@192.168.1.100:22`)[^3] #### 2. 连接远程服务器 - 在左侧"远程资源管理器"选择已配置的服务器 - 首次连接需输入服务器密码/密钥,建议勾选"记住密码" - 成功连接后状态栏显示远程主机名[^2] #### 3. 上传项目文件(两种方式) **方法一:直接拖拽上传** 1. 在本地文件管理器选中项目文件夹 2. 拖拽到VSCode远程窗口的目录区域 3. 在弹出对话框确认上传路径 **方法二:通过资源管理器操作** 1. 连接远程服务器后,打开VSCode文件资源管理器 2. 右键目标目录选择"Upload" 3. 在本地文件选择窗口选取项目文件夹[^4] #### 4. 验证上传结果 -远程目录查看文件时间戳和大小 - 可通过终端执行`ls -l /path/to/project`确认文件完整性 #### 注意事项 1. 大文件上传建议使用压缩包,完成后再解压 2. 上传前检查远程存储空间:`df -h` 3. 文件权限自动继承目标目录设置,必要时用`chmod`调整
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诸神缄默不语

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值