Mac系统更新后第三方软件闪退主因是签名验证收紧、隐私权限重置、沙盒强化或API变更;需依序排查更新记录、崩溃日志、quarantine属性、ad-hoc签名、Rosetta设置、TCC权限及Gatekeeper绕过。

Mac系统更新后第三方软件突然闪退,不是软件坏了,而是新系统收紧签名验证、重置隐私权限、强化沙盒策略或调整API行为所致;必须按环境变更的真实路径逐层排查,跳过任何一步都可能让问题反复出现。
先确认是不是这次更新惹的祸
打开「系统设置 → 通用 → 软件更新」,看最近安装的更新名称和日期,比如“macOS Sequoia 15.5 安全更新(2026-06)”;再打开「控制台」→ 左侧选「崩溃报告」→ 搜索关键词 code-signing、hardened runtime、dyld: Library not loaded 或 TCC;如果日志里反复出现“not validly signed”或“ad-hoc signature rejected”,基本锁定是更新触发的签名拦截。
清除隔离属性并强制重签名
系统更新后会自动给从网络下载的应用打上 quarantine 属性,同时拒绝未公证的 ad-hoc 签名;这两道关卡叠加,直接导致应用连启动画面都出不来。
方法一:终端一键清除+重签名
1、打开「终端」;
2、输入 sudo xattr -r -d com.apple.quarantine,留一个空格;
3、在「访达」中打开「应用程序」文件夹,把目标App(如 Obsidian.app)直接拖进终端窗口,路径自动填入;
4、回车执行,输入管理员密码(输入时无光标、无反馈,输完直接按回车);
5、紧接着输入 sudo codesign --force --deep --sign -,同样留空格后拖入该App;
6、若报错 “resource fork, Finder information, or similar detritus”,改用完整命令:sudo codesign --force --deep --preserve-metadata=entitlements,requirements,flags --sign -;
这一步必须做完才能进下一环,否则后续所有操作都无效。
为Intel应用启用Rosetta
Apple Silicon Mac(M1/M2/M3)在系统更新后可能默认关闭Rosetta,导致仅支持x86_64架构的应用启动即崩溃,错误日志里常带 EXC_BAD_INSTRUCTION (SIGILL)。
1、访达 → 应用程序 → 右键点击目标App → 「显示简介」;
2、勾选「使用Rosetta打开」;
3、若选项灰色不可点,先在终端运行:/usr/sbin/softwareupdate --install-rosetta --agree-to-license,再重试;
勾选后务必关闭简介窗口,否则设置不生效。
重置TCC权限数据库
系统更新会清空TCC(摄像头、麦克风、辅助功能、全盘访问等权限记录),调用这些能力的应用(如录屏工具、OCR、自动化脚本)会在加载阶段直接崩溃,不弹窗、不报错、只闪退。
方法一:按Bundle ID精准重置
1、右键App → 「显示包内容」→ 打开 Contents/Info.plist;
2、用预览或文本编辑器搜索 CFBundleIdentifier,记下值(如 com.brettterpstra.nvalt);
3、终端执行:tccutil reset All com.brettterpstra.nvalt(替换为你自己的ID);
方法二:暴力重置全部(仅限紧急排查)
终端执行:tccutil reset All;
重启App,首次调用敏感权限时系统会重新弹窗,必须点「允许」,否则下次仍崩溃。
右键“打开”绕过Gatekeeper
这是最轻量的一次性放行方式,不改系统策略,只对当前App实例生效;适合刚下载、还没来得及重签名的应用,或你只想快速验证是否真由签名拦截导致闪退。
1、访达中定位到该App图标;
2、按住Control键单击 → 选择「打开」;
3、弹出警告后点「仍要打开」;
之后双击就能正常启动,无需重复操作。











