很多 Mac 用户(尤其是使用 M1、M2、M3 芯片的新电脑用户)在从网上下载第三方软件安装时,经常会遇到以下这种令人抓狂的提示:
“XXX已损坏,无法打开。你应该将它移到废纸篓。”“打不开 XXX,因为它来自身份不明的开发者。”
其实,这通常不是软件真的坏了,而是 macOS 极其严格的安全机制(Gatekeeper)在作祟。今天教大家三招,彻底解决这个问题!
第一步:开启“任何来源”选项
默认情况下,macOS 的“隐私与安全性”里只有两个选项。我们需要手动开启隐藏的“任何来源”。
① 打开 终端 (Terminal)。
② 输入以下命令并回车:
sudo spctl --master-disable③ 输入你的 Mac 开机密码并回车(注意:密码输入时屏幕不会显示任何字符)。
结果: 进入“系统设置 -> 隐私与安全性”,你会发现已经勾选了“任何来源”。
第二步:绕过隔离属性(解决“已损坏”的核心)
即使开启了“任何来源”,从浏览器下载的文件依然会被打上“隔离”标签。我们需要手动清除它。
① 在终端输入以下命令(注意:最后面有一个空格):
sudo xattr -r -d com.apple.quarantine② 打开“应用程序”文件夹,把那个打不开的软件图标直接拖进终端窗口(路径会自动补全)。
完整的命令看起来像这样:sudo xattr -r -d com.apple.quarantine /Applications/AppName.app
③按下回车,输入密码即可。
第三步:针对 M1/M2/M3 芯片的“终极杀招”:本地重签名
如果前两步做了还是不行,那是由于 M 系列芯片对 ARM 架构软件有强制签名要求。如果软件被修改过(如下载的破解版),签名失效就会报错。
① 在终端输入以下命令(注意:最后面有一个空格):
sudo codesign --force --deep --sign -② 同样,把“应用程序”里的软件图标拖进终端。
完整的命令看起来像这样:sudo codesign --force --deep --sign - /Applications/AppName.app
③ 按下回车,输入密码。如果看到 replacing existing signature,恭喜你,成功了!
⚠️ 避坑小贴士(非常重要!)
在操作过程中,很多小伙伴会失败,通常是因为:
- 命令没写全: 命令和文件路径必须在同一行!千万不要先按回车再拖图标。
- 漏掉空格: 命令(如 – 或 quarantine)和后面的路径之间一定要有一个空格。
- 位置不对: 建议先把软件从“下载”文件夹移动到**“应用程序”**文件夹后再进行上述操作。
总结
遇到“软件损坏”不要慌,先开权限,再清隔离,最后重签名。这三板斧下去,99% 的 Mac 软件都能正常运行!
如果觉得有用,记得点赞收藏备用哦!💻✨
作者:霍欣标,如若转载,请注明出处:https://www.bigengwu.cn/shu/390.html