Clash Verge Telegram OBS 等软件,双击打开就弹这个?别慌,软件没坏,是 macOS 的安全限制在搞鬼。
xattr 命令 —— 移除隔离标记(推荐)
这是最精准的方法,只对指定应用生效,不影响系统整体安全设置。
按 Command + 空格,输入 Terminal(或"终端"),回车打开。
回车后输入你的 Mac 开机密码(输入时不会显示,正常输完回车即可)。
sudo xattr -rd com.apple.quarantine 后加一个空格,然后把应用从"访达"直接拖进终端窗口,路径会自动填上。
双击应用,正常打开,搞定。
com.apple.quarantine 隔离属性。xattr -rd 命令递归删除这个属性,系统就不再弹"已损坏"了。
允许「任何来源」—— 关闭 Gatekeeper
如果方法一不管用,或者你经常安装第三方软件懒得每次都敲命令,可以直接关闭 Gatekeeper。
回车后输入开机密码。
打开 系统设置 → 隐私与安全性(旧版是"系统偏好设置 → 安全性与隐私"),你会看到"允许从以下位置下载的 App"多了一个 「任何来源」 选项,并且已选中。
现在再打开之前报错的应用,不会再弹"已损坏"了。
为什么会出现这个问题?
Gatekeeper 机制
macOS 内置的安全守门人。它要求所有应用必须经过 Apple 公证签名,否则直接拦截,提示"已损坏"。
隔离属性标记
浏览器下载的文件会被自动加上 com.apple.quarantine 扩展属性,告诉系统"这个文件来自网络,要检查"。
开源软件没签名
Apple 开发者账号每年 $99,很多开源/免费软件不会花钱做签名。没签名 ≠ 有病毒,只是没交"保护费"。
常见受影响的软件
以下软件从第三方下载后可能触发"已损坏"提示,用上面两招都能解决:
代理工具
Clash Verge Rev、ClashX、V2rayU、Surge(测试版)、Shadowrocket Mac
开发工具
VS Code Insiders、Sublime Text、iTerm2、TablePlus、Navicat
效率工具
Alfred、Bartender、CleanMyMac、Downie、IINA、OBS
设计/创意
Sketch、Figma Agent、Blender、DaVinci Resolve(第三方源)
常见问题
确认应用已拖到 /Applications 文件夹。最简单的办法:
输入 sudo xattr -rd com.apple.quarantine (注意末尾有空格),然后把应用从访达直接拖进终端窗口,路径自动补全。
完全通用。无论 Intel 还是 Apple Silicon 芯片,两个命令一模一样。
按顺序排查:
1. 右键应用 → 选择「打开」(不是双击)
2. 重启 Mac 再试
3. Apple Silicon Mac 某些 x86 应用需要 Rosetta 2:softwareupdate --install-rosetta
4. 重新下载应用(可能下载不完整)
这个比"已损坏"好解决。右键应用 → 选择「打开」→ 弹窗点「打开」就行。或者直接用方法二开启"任何来源"。
macOS 还有 XProtect(恶意软件检测)在后台保护你,不会完全裸奔。但建议:
1. 只安装来源可信的软件(官网/GitHub)
2. 装完后执行 sudo spctl --master-enable 恢复默认
macOS 大版本更新(如 Ventura → Sonoma)可能重置 Gatekeeper 设置。重新执行 sudo spctl --master-disable 即可。xattr 方法不受影响,已清除标记的应用不会再报错。
终端输入:xattr -l /Applications/应用名.app
如果输出里有 com.apple.quarantine 就说明被标记了。
对 DMG 文件也能用 xattr 命令:
sudo xattr -rd com.apple.quarantine ~/Downloads/xxx.dmg
清除后双击 DMG 就能正常挂载了。