VSCode 1.85 版本启动报错 code 126 怎么解决?

文章导读
VSCode 1.85 版本启动报错 exit code 126 通常是因为 Linux 系统下可执行文件权限丢失或沙盒配置冲突。最推荐的处理方向是先检查文件执行权限,再尝试禁用沙盒启动,注意禁用沙盒会降低安全性,仅建议临时排查使用。
📋 目录
  1. 命令速用版
  2. 为什么会这样
  3. 分步处理
  4. 怎么验证是否生效
  5. 常见坑
  6. 常见问题
  7. 参考来源
A A

VSCode 1.85 版本启动报错 exit code 126 通常是因为 Linux 系统下可执行文件权限丢失或沙盒配置冲突。最推荐的处理方向是先检查文件执行权限,再尝试禁用沙盒启动,注意禁用沙盒会降低安全性,仅建议临时排查使用。

先说结论:VSCode 1.85 启动报错 code 126 本质是系统无法执行该程序,多数情况修复权限即可解决。

  • 先确认:检查 VSCode 二进制文件是否拥有执行权限
  • 先处理:通过 chmod 命令修复权限或添加 `--no-sandbox` 参数
  • 再验证:在终端运行 code 命令查看是否不再返回 126 错误

命令速用版

如果确认是 Linux 环境且急需启动,可尝试以下命令修复权限或临时绕过沙盒检查。

# 修复主程序执行权限
sudo chmod +x /usr/share/code/code

# 临时禁用沙盒启动(仅用于排查)
code `--no-sandbox`

执行命令后观察 VSCode 是否正常拉起,若仍然报错需检查依赖库是否完整。

为什么会这样

退出码 126 是 Linux Shell 的标准错误定义,表示命令 invoked cannot execute(命令无法执行)。在 VSCode 1.85 更新场景下,常见原因是 Electron 框架升级导致沙盒机制变更,或安装过程中文件权限未被正确写入。系统识别到文件存在但缺乏执行位,或当前用户无权调用沙盒资源,从而返回 126 错误。

分步处理

按顺序执行以下步骤,每步完成后尝试启动 VSCode,若成功则无需继续后续步骤。

步骤 1:检查并修复文件权限

在终端执行 ls -l 查看主程序权限,确保拥有 x 执行位。

VSCode 1.85 版本启动报错 code 126 怎么解决?
ls -l /usr/share/code/code

若权限缺失,使用 chmod 赋予执行权限。

sudo chmod 755 /usr/share/code/code

步骤 2:检查文件归属权

确认当前登录用户有权读取该文件,避免文件归属为 root 导致普通用户无法执行。

sudo chown -R $USER:$USER /usr/share/code

步骤 3:调整沙盒配置

若权限正常仍报错,可能是 Electron 沙盒与当前内核配置冲突。修改启动快捷方式,在 Exec 字段末尾添加 `--no-sandbox` 参数。

# 示例:修改 desktop 文件
sudo nano /usr/share/applications/code.desktop
# 找到 Exec 行,改为:Exec=/usr/share/code/code `--no-sandbox` %F

怎么验证是否生效

在终端直接运行 code 命令启动,观察退出状态码。

VSCode 1.85 版本启动报错 code 126 怎么解决?
code
echo $?

若输出 0 表示启动成功,若仍输出 126 表示问题未解决。同时观察图形界面是否正常加载窗口,无闪退现象即为生效。

常见坑

1. 不要长期使用 sudo code 启动,这会导致配置文件权限混乱,后续普通用户无法读取配置。

2. 禁用沙盒(`--no-sandbox`)会降低浏览器内核的安全性,仅建议在确认是沙盒问题后临时使用,生产环境建议修复内核配置。

3. 部分发行版缺少 libgbm1 等依赖库也会引发启动失败,需配合 ldd 命令检查动态库链接状态。

常见问题

报错 126 是否代表 VSCode 文件损坏?

不一定,报错 126 主要指向权限问题而非文件损坏。若文件哈希值正常,优先修复权限而非重新下载安装包。

能否直接用 root 用户运行 VSCode 规避错误?

不建议,VSCode 默认禁止以 root 身份运行,强制运行可能导致插件安装路径错误及安全风险。

重装 VSCode 能解决 code 126 吗?

可能解决,但若系统权限配置未修复,重装后仍可能复发。建议先执行权限修复命令再考虑重装。

参考来源

  • Linux 标准退出码规范,Exit Codes 126 定义,tldp.org
  • Visual Studio Code GitHub 仓库,Issues 栏目关于 Linux startup failed 的讨论,github.com/microsoft/vscode