在Mac上下载了一款实用工具或开源软件,双击后却弹出“无法打开‘XXX’,因为它来自身份不明的开发者”警告——这并非软件损坏,而是macOS Gatekeeper安全机制拦截了未经验证的应用。你需要手动解除限制才能继续安装。下面提供几种常见的解决方案,按操作复杂程度和适用场景依次说明。
用Control+点击临时信任单个应用
这一步操作非常简便,只需在访达中按住Control键点击应用图标即可。适合只运行一次、来源基本可信的软件,且不会修改系统全局设置。
1、在“访达”中找到待安装的.app文件(通常位于“下载”文件夹)。
2、按住Control键并点击该应用图标,呼出右键菜单。
3、从菜单中选择“打开”(注意不是“显示简介”或“打开方式”)。
4、在弹出的安全警告窗口中,【必须点击“打开”,若点“取消”将无法触发信任注册】。
5、应用启动后,系统已将其标记为已验证,此后可直接双击运行。
在“隐私与安全性”里点“仍要打开”
当系统明确识别出被拦截的应用名称时,会在设置中直接提供一个放行按钮。这种方法比右键操作更直观,特别适合已经拖入“应用程序”文件夹但无法打开的软件。
方法一:直接响应拦截提示
1、点击苹果菜单 → “系统设置”。
2、左侧边栏点击“隐私与安全性”,向下滚动至“安全性”区域。
3、查找形如“已阻止使用 ‘Qoder.app’,因为它来自未识别的开发者”的红色提示。
4、在该提示右侧点击“仍要打开”按钮。
5、返回访达,双击该应用即可启动。
方法二:手动刷新授权状态
若提示没有自动出现,先双击应用触发拦截,再进入上述路径,系统会立刻生成对应的提示项。
通过终端启用“任何来源”选项
macOS Sequoia、Sonoma等新版本默认隐藏了“任何来源”开关,必须先执行终端命令激活,否则在系统设置中根本看不到它——这是全局放开安装权限的必要前置步骤。
第一步:打开终端并执行禁用命令
按下Command + 空格键,输入“终端”,回车启动;在窗口中输入:sudo spctl --master-disable,回车后系统会要求输入管理员密码——输入过程无任何字符显示,属正常现象,凭记忆准确输入后按回车。
第二步:解锁设置并勾选选项
前往“系统设置 → 隐私与安全性 → 安全性”,点击右下角锁形图标,输入管理员密码解锁;在“允许从以下位置下载的应用”下方,此时应可见“任何来源”复选框,勾选它。
用xattr命令清除隔离属性
有些.dmg或.app文件被系统自动打上了quarantine属性,导致即使已信任仍报“已损坏”——这种问题不能靠点击“仍要打开”解决,必须用命令精准移除标记。
1、打开“访达”,定位到待处理的应用程序(如xxx.app)。
2、打开“终端”应用。
3、输入命令:xattr -d com.apple.quarantine,后接一个空格。
4、将应用程序图标拖入终端窗口,自动补全路径,然后按回车执行。
5、再次双击运行该应用,系统将不再触发Gatekeeper警告。
