尝试使用远程服务器扩展连接高性能计算服务器时,连接失败并返回
Server returned 404
。
从错误日志来看,错误似乎是执行行
wget [vscode-server-download-lind]
。所以我认为这是下载正确版本的 VS Code 服务器的问题。
我可以通过 ssh 连接。 尝试了不同的网络并连接到其他高性能计算服务器。也尝试过手动安装vscode服务器,但是都是不成功。
通过手动下载正确的服务器版本并将其安装在远程服务器上,确保删除过时的版本并将更新的版本移动到正确的位置,可以解决该问题。
使用 SSH 从链接手动下载服务器主目录中的文件:
https://update.code.visualstudio.com/commit:[commit id]/server-linux-x64/stable
提交 ID 可以在本地计算机上的 VS Code 菜单栏中找到:代码 -> 关于 Visual Studio Code -> 提交。如果你使用的是 Mac,它应该看起来像这样:
b58957e67ee1e712cebf466b995adf4c5307b2bd
使用以下命令下载服务器文件:
wget https://update.code.visualstudio.com/commit:b58957e67ee1e712cebf466b995adf4c5307b2bd/server-linux-x64/stable
验证下载成功后,通过运行解压vscode服务器:
tar -xvzf vscode-server.tar.gz -C ~/.vscode-server
确保安装了依赖项:
sudo apt-get update
sudo apt-get install libx11-dev libxkbfile-dev libsecret-1-dev
本例的问题在于 vscode 服务器文件嵌套不正确。
导航到 vscode 服务器目录:
cd ~/.vscode-server/bin/<commit-hash>/
ls
如果您注意到
vscode-server-linux-x64
等目录,而不是 bin
、extensions
等预期的服务器文件,直接位于 <commit-hash>
目录下,则您已经确定了嵌套问题。
导航到错误嵌套的目录:
cd vscode-server-linux-x64/
将所有内容上移一级到正确的目录:
mv * ../
返回正确目录并验证结构:
cd ..
ls
您现在应该直接在
<commit-hash>
下看到预期的文件和目录。
调整文件结构后,使用 VSCode 中的远程 - SSH 扩展重新连接。它现在应该能够识别手动安装的服务器,并且不会尝试再次下载它。