问题描述
总之使用vscode连接未联网的内网服务器时,很多未响应的问题。
最新解决方案
解决方案:在Output中可以查看Remote - SSH日志,可以发现vscode-server已经下载到了本地(C:\Users\Administrator\AppData\Local\Temp\vscode_server_xxxxxxx位置),是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复制所有信息
接下来VSCode就会自己解压压缩包并安装了,然后就可以正常使用远程服务器了。
原文链接:https://blog.csdn.net/PolarisRisingWar/article/details/135855635
解决方法
正确的解决方法
上面的解决方法都有不完全之处,请看我的!:
- 获得本机vscode的一项配置信息(提交后面的那一行代码Commit ID)
- 下载服务器端的文件
https://update.code.visualstudio.com/commit:${commit_id}/server-linux-x64/stable
(注意把:${commit_id}替换成对应的Commit ID)
- 通过别的访问服务器的方式,上传这个压缩包至服务器
- 建立文件夹
mkdir -p ~/.vscode-server/bin
rm ~/.vscode-server/bin/* -rf #把$HOME/.vscode-server/bin下的内容删干净,防止出错
- 把压缩包解压至bin/下的一个以Commit ID为文件夹名称的里面。
tar -zxf
- 最终的效果为
~/.vscode-server/bin/${commit_id}/
文件夹里面有这样几个文件
大功告成!
有时候rm会报错 Device or resource busy
先列出占用的进行PID
lsof +D 7db1a2b88f7557e0a43fec75b6ba7e50b3e9f77e/
之后使用kill杀掉这个进程,就可以成功删除干净了。
lsof |awk '/deleted/{print $2}'|xargs kill -9