陈伦刚
陈伦刚
发布于 2024-12-20 / 13 阅读
0

macOS 提示:“应用程序” 已损坏,无法打开的解决方法总结

请访问原文链接:macOS 提示:“应用程序” 已损坏,无法打开的解决方法总结 查看最新版。原创作品,转载请保留出处。


说明:本文描述问题同样适用于其他版本的 macOS,因历史原因在 Catalina 中出现问题的情况最多。

现象

提示:“应用程序” 已损坏,无法打开。您应该将它移到废纸篓。

dialog-1

提示:无法打开 “应用程序”,因为无法验证开发者。macOS 无法验证此 App 不包含恶意软件。

dialog-2

提示:“应用程序” 将对您的电脑造成伤害。您应该将它移到废纸篓。

dialog-3


解决方法

一般情况下,只需要 1 和 2 两步即可。

1. 允许 “任何来源” 下载的 App 运行

打开 “终端” 执行如下命令(根据提示输入您的密码即可):

sudo spctl --master-disable

打开 “系统偏好设置…” - “安全性与隐私”,“通用” 标签页,如图勾选:

allow-anywherep

macOS Ventura 略有变化,位于:系统设置 – 隐私和安全性,“安全性”(参看下述第 3 点截图)。

2. 移除应用的安全隔离属性

打开 “终端” 执行如下命令(根据提示输入您的密码即可):

sudo xattr -dr com.apple.quarantine /Applications/name.app

/Applications/name.app 如果不知道该如何输入,将 App 直接拖拽 sudo xattr -rd com.apple.quarantine(中间有个空格)后面即可。

一般情况下,多余的扩展属性都可以清除(个别应用例外):

可以直接输入:sudo xattr -cr /Applications/*

3. macOS Ventura 额外步骤

macOS Ventura 的系统安全性又上升到一个新的高度,上述两个步骤后,需要在 “系统设置” 中打开应用。

系统设置 – 隐私和安全性,“安全性” 下面出现提示,点击 “仍要打开”,当然该操作仅需要一次,以后可以正常打开。

system-setting-security

以上同样适用于 macOS Sonoma 和 macOS Sequoia。

4. 重新签名

多数情况下,App 已经可以正常运行了,很多和谐软件因为证书问题,仍然无法打开。此时可以重新签名。

打开 “终端”,执行如下命令:

codesign --force --deep --sign - /Applications/name.app

前提条件: 安装 Command Line Tools for Xcode

此时会提示安装,或者使用终端命令在线安装:

xcode-select --install

也可以到这里下载 Command Line Tools for Xcode:Xcode 14.3.1 (14E300c) - Apple 平台 IDE

5. 覆盖恶意软件保护

还有一种情况,

提示:“应用程序” 将对您的电脑造成伤害。您应该将它移到废纸篓。

以上步骤操作后还是无法打开。

解决办法:

访达 -> 应用程序 -> 右击软件 -> 显示简介,勾选 “覆盖恶意软件保护”。

get-info-sysin

说明:正常应用不会出现这个选项