看了博客教程踩坑N次,简单总结一下操作流程。
适用于已经会ssh连接有网服务器,但是无网服务器连到日志显示“Downloading with wget”之后报错无法与”xxx.xx.xx.xx”建立连接: XHR failed.的。
1.找到自己本地VSCode的提交id
打开VSCode -> 顶部菜单选择最后一个“帮助” -> 选择最后一个“关于” 然后就会看到类似于下面的内容,复制第二行的提交id。
版本: 1.84.2 (user setup)
提交: 1a5daa3a0231a0fbba4xxxxxxxxxxxxxx #复制这一串字符
日期: 2023-11-09T10:51:52.184Z
Electron: 25.9.2
ElectronBuildId: 24603566
Chromium: 114.0.5735.289
Node.js: 18.15.0
V8: 11.4.183.29-electron.0
OS: Windows_NT x64 10.0.26100
2.本地PowerShell下载vscode-server-linux-x64.tar.gz
先进一个方便存vscode-server-linux-x64.tar.gz的目录
cd D:\casia_files\config_files\
下载文件,记得把 {your_commit_id}
换成你刚刚复制的提交id
Invoke-WebRequest "https://update.code.visualstudio.com/commit:{your_commit_id}/server-linux-x64/stable" -OutFile "vscode-server-linux-x64.tar.gz"
有的博客讲的是用
wget https://update.code.visualstudio.com/commit:{your_commit_id}/server-linux-x64/stable
但是PowerShell 中的 wget 实际上是 Invoke-WebRequest 的别名,它默认会把下载的内容存在内存中,而不是直接保存成文件。你指定的路径下不会有文件,只会在PowerShell显示:
StatusCode : 200
StatusDescription : OK
Content : {31, 139, 8, 0...}
RawContent : HTTP/1.1 200 OK
Connection: keep-alive
X-Ms-ApiVersion: Distribute 1.2
X-Ms-Region: prod-eus-z1
Content-Disposition: attachment; filename=vscode-server-linux-x64.tar.gz; filename*=UTF-8''vscode-s
e...
Headers : {[Connection, keep-alive], [X-Ms-ApiVersion, Distribute 1.2], [X-Ms-Region, prod-eus-z1], [Content-
Disposition, attachment; filename=vscode-server-linux-x64.tar.gz; filename*=UTF-8''vscode-server-li
nux-x64.tar.gz]...}
RawContentLength : 51117717
正确操作的话,你指定的路径下会有vscode-server-linux-x64.tar.gz压缩包,大小应该是49920kB。
3. 上传vscode-server-linux-x64.tar.gz到服务器
用MobaXterm,Xshell或者Xftp之类的软件把vscode-server-linux-x64.tar.gz上传到服务器,这里踩坑最久。注意不同层级目录下有同样名字的文件夹(比如 /bin/
)一定不要看错。
在bash命令行输入
cd ~/.vscode-server/bin
不知道自己 /.vscode-server/
路径的建议 pwd
一下看当前的路径
在图形化的界面进入到 ~/.vscode-server/bin
目录下,清空里面所有的文件
rm ~/.vscode-server/bin/* -rf
然后,先手动把vscode-server-linux-x64.tar.gz上传到 ~/.vscode-server/bin
目录下,再进行解压:
tar -zxf vscode-server-linux-x64.tar.gz
解压完成之后,对vscode-server-linux-x64进行重命名,重命名为自己的提交id
mv vscode-server-linux-x64 1a5daa3a0231a0fbba4xxxxxxxxxxxxxx
然后本地VScode就能顺利连上了。