VS Code Remote SSH远程连接异常
问题描述
通过VS Code插件Remote - SSH连接一台新主机时,提示错误:
Resolver error: Error: Running the contributed command: ‘_workbench.downloadResource’ failed.
原因分析
查看VS Code的日志发现,原来是因为新主机没有tar命令,导致插件无法在远程主机上安装好插件需要的服务。
日志如下:
tar --version:
main: line 416: tar: command not found
main: line 417: tar: command not found
mv: cannot stat ‘vscode-server*/*’: No such file or directory
ERROR: /root/.vscode-server/bin/3866c3553be8b268c8a7f8c0482c0c0177aa8bfa/node or
/root/.vscode-server/bin/3866c3553be8b268c8a7f8c0482c0c0177aa8bfa/server.sh don
't exist
解决方案
-
安装
tar
sudo yum install -y tar
-
清空上次错误安装的文件
rm -rf ~/.vscode-server
-
重新连接即正常。
扩展
Remote SSH首次连接插件做了什么
- 连接远程主机
- 在远程主机当前用户目录下下载
vscode-server
压缩文件 - 通过
tar
解压并安装vscocde-server
Remote SSH对于远程Linux的要求
Linux版本 | 基本要求 | Remote - SSH 要求 | 备注 |
---|---|---|---|
通用版 | kernel >= 3.10, glibc >=2.17, libstdc++ >= 3.4.18, Python 2.6 or 2.7, tar | OpenSSH server, bash , 和 curl 或 wget | 执行ldd --version 来检查glibc版本. 执行strings /usr/lib64/libstdc++.so.6 | grep GLIBCXX 来查看libstdc++ 3.4.18是否可用. |
Ubuntu 16.04+, Debian 8+, Raspbian Stretch/9+ 和下游版本 | libc6 libstdc++6 python-minimal ca-certificates tar | openssh-server bash 和curl 或wget | 要求kernel >= 3.10, glibc >= 2.17, libstdc++ >= 3.4.18. Debian < 8 (Jessie)和Ubuntu < 14.04不符合这个要求。 |
RHEL / CentOS 7+ | glibc libgcc libstdc++ python ca-certificates tar | openssh-server bash 和curl 或wget | 要求kernel >= 3.10, glibc >= 2.17, libstdc++ >= 3.4.18. RHEL / CentOS < 7不升级glibc和libstdc++则不符合要求。 |
Alpine Linux 3.9+ | musl libgcc libstdc++ . musl >= 1.1.18, 不需要glibc。 | 尚未支持。 | 支持容器和WSL 。 由于扩展本机代码中的 glibc 依赖性,安装在容器中的扩展可能无法工作。 |
openSUSE Leap / SUSE Linux Enterprise 15+ | glibc libgcc_s1 libstdc++6 python ca-certificates gzip tar | curl 或 `wget | 要求kernel >= 3.10, glibc, libstdc++6 |
若文章有误,或你有什么见解,欢迎留言指正和交流。
原创不易,若有所帮助,欢迎点赞、收藏。