问题描述
由于之前未关闭VsCode的自动更新,导致了VsCode版本过高,今天在链接虚拟机时产生报错:LinuxPrereqs │ 远程主机可能不符合 glibc 和 libstdc++ Vs code 服务器的先决条件。
║ LinuxPrereqs │ 远程主机可能不符合glibc和libstdc++ VS Code服务器的先决条件(远程主机不满足运行VS Code服务器的先决条件)
│ • https://aka.ms/vscode-remote/faq/old-linux
│ • https://aka.ms/vscode-remote/linux-prerequisites
║│ │
原因分析:
VsCode版本过高导致的Linux系统不兼容;code版本自动更新为1.99 ,但是Centos7中glibc版本为2.17,最新版本的1.99不支持2.17版本的glibc,导致Centos中的/home/zhang/.vscode-server无法启动
解决方案:
一共有两种解决方案回退vscode版本、更新Linux系统的glibc版本。这里采用第一种解决方案回退VsCode版本至1.98.2,因为操作起来相对容易。
1、关闭当前VsCode的自动更新,防止后续出现同样的问题;
2、下载1.98版本的安装包,把电脑断网后再进行安装,它会自动覆盖最新版本的VsCode(无需卸载),安装成功后重新连接网络,查看当前VsCode的版本。
3、重新安装VsCode以后它可能无法找到之前安装的插件,如果再重新下载插件会很麻烦,此时可以通过设置插件的默认路径帮助VsCode找到之前的插件。
1、关闭VsCode
2、右键VsCode桌面快捷方式,点击“属性”,在目标中添加 --extensions-dir “D:\VSCODE\extensions”(英文双引号里面是你自己定义的文件夹路径)
3、重新启动后就可以看到原来的插件加载成功
--extensions-dir “D:\VSCODE\extensions” //复制后将双引号里的文件路径改为你自己的路径
总结
通过以上方法可以成功解决报错:LinuxPrereqs │ 远程主机可能不符合 glibc 和 libstdc++ Vs code 服务器的先决条件。