如何阻止WSL中的VS Code Server尝试更新?(企业防火墙限制)
解决WSL1中VS Code Server更新检测导致启动失败的问题
一、更新VS Code配置(禁用自动检测与更新)
替换你之前的无效配置,使用官方支持的配置项,同时在用户设置和远程WSL设置中添加以下内容:
{ "update.mode": "none", "remote.WSL.autoServerDownload": false, "remote.WSL.serverDownloadUrl": "", "extensions.autoUpdate": false, "extensions.autoCheckUpdates": false }
update.mode: 全局禁用VS Code本体的更新检测remote.WSL.autoServerDownload: 禁止自动下载或更新WSL端的VS Code Serverremote.WSL.serverDownloadUrl: 清空下载地址,阻断更新包的下载请求- 扩展相关配置:彻底禁用扩展的自动更新与检测
注意:你之前使用的
remote.WSL.serverUpdate、remote.WSL.autoCheckUpdates并非官方有效配置项,因此无法生效。
二、通过hosts阻断所有VS Code更新相关域名
在WSL的/etc/hosts文件中添加以下域名重定向,覆盖更新检测与下载的所有可能地址:
127.0.0.1 update.code.visualstudio.com 127.0.0.1 vscode-update.azurewebsites.net 127.0.0.1 az764295.vo.msecnd.net 127.0.0.1 vscode-update.microsoft.com 127.0.0.1 api.github.com
添加后执行以下命令使hosts生效:
sudo systemctl restart systemd-resolved
或直接重启WSL实例。
三、手动固定VS Code Server版本(终极方案)
若上述方法仍无法阻止更新尝试,直接指定固定的Server路径,彻底避免版本检测:
- 找到你之前能正常运行的VS Code Server版本目录,格式为
~/.vscode-server/bin/<有效版本号>(例如你日志中出现的1e3c50d64110be466c0b4a45222e81d2c9352888) - 在VS Code用户设置中添加路径配置:
"remote.WSL.serverPath": "/home/你的用户名/.vscode-server/bin/<有效版本号>/server.sh"
- 将该版本目录设为只读,防止被VS Code删除:
sudo chmod -R 555 ~/.vscode-server/bin/<有效版本号>
内容的提问来源于stack exchange,提问作者Argysh
相关产品推荐
相关产品推荐

