今天用VSCode进行ssh连接时,提示“远程主机可能不符合 glibc 和 libstdc++ VSCode 服务器的先决条件”。查了一下发现这个问题主要是由于VSCode在一月份发布的最新版本v1.86中要求远程主机 glibc>=2.28导致的,所以ssh连接Ubuntu 18.04的时候就会提示这个警告,很烦人。若要查看系统的glibc版本,可以使用命令ldd --version
。
官方关于该问题的建议是升级Ubuntu系统或者降级VSCode,既然升级系统很麻烦,那不如安装低版本的Code省事。以下是降级的方法:
1. 卸载当前版本VSCode
首先,你需要卸载当前安装的VSCode版本。使用以下命令可以完成卸载,注意这里使用的是 apt-get remove 而不是 apt-get purge,这样可以保留用户配置文件,避免重新安装插件。
sudo apt-get remove code
2. 下载并安装旧版VSCode
接下来需要下载旧版的VSCode:https://code.visualstudio.com/updates/v1_85。下载完成后,使用以下命令安装:
sudo dpkg -i code_1.85.2-1705561292_amd64.deb
3. 关闭自动更新:
为了避免VSCode再次升级到最新版本,我们需要关闭自动更新功能,具体步骤如下:
(1)打开VSCode,在菜单栏中选择 文件(File) -> 首选项(Preferences) -> 设置(Settings)。
(2)在设置页面中,搜索框中输入 update.mode。
(3)在搜索结果中,找到 Update: Mode 选项,并将其设置为 none。
(4)显示“设置已更改,需要重启才能生效”,点击“重启”以重启VSCode即可。
4. Remote - SSH 降级(可选)
点击左边菜单栏的“拓展”,搜索Remote - SSH,可以看到图标是灰色的,说明不适配当前旧版Code,需要选择安装另一个版本,选择v0.107.0安装即可。接下来就可以愉快地使用ssh了。