常见的几种报错

  • xxx已损坏,无法打开,你应该将它移到废纸篓解决办法
  • 打不开 xxx,因为它来自身份不明的开发者
  • 打不开xxxx,因为 Apple 无法检查其是否包含恶意软件
  • 在安装的时候提示加载失败!

为什么会出现?

  • 这是 macOS 启用了新的安全机制的问题。
    -苹果默认是只允许安装自家【App Store】来源的应用,如果你想安装第三方的应用,那么需要在【系统偏 好设置 -> 安全性与隐私 -> 通用】中勾选【App Store 和被认可的开发者】选项。而被认可的开发者是需要购买苹果的企业证书对应用进行签名,然后再提交给苹果审核才可以,这对破解应用来说很不现实,因为破解应用必定会修改应用的文件从而导致签名失效而运行显示【已损坏】。
  • 解决方法就是去开启【任何来源】选项了,但是 macOS 默认是隐藏了这个设置的,需要用户手动通过终端执行命令行代码来开启。

开启任何来源(能解决绝大部分问题)

sudo spctl --master-disable

绕过公证(扩展)

sudo xattr -rd com.apple.quarantine /Applications/xxxxxx.app

应用签名(扩展)

安装Command Line Tools 工具

xcode-select --install

打开终端工具输入并执行如下命令对应用签名:

sudo codesign --force --deep --sign - (应用路径)

正常情况下只有一行提示,即成功:

/文件位置 : replacing existing signature

如遇如下错误:

`
/文件位置 : replacing existing signature
/文件位置 : resource fork,Finder information,or similar detritus not allowed
`

关闭 SIP(必杀技)

关闭 SIP 后运行应用将不会再提示:

  • xxx已损坏,无法打开,你应该将它移到废纸篓解决办法
  • 打不开 xxx,因为它来自身份不明的开发者
  • 打不开xxxx,因为 Apple 无法检查其是否包含恶意软件

也就是说,只要应用本身可以运行,那不管应用是否签名/公证,不管应用是不是恶意应用,你打开后它都会直接运行在你的系统中

警告:SIP(系统完整性保护 )是 macOS 所采用的一项安全技术,关闭SIP,就相当于是 “给手机Root”了,会降低电脑的,如非必要,不建议大家关闭SIP。

检查 SIP 状态

csrutil status

未关闭 enabled:

System Integrity Protection status: enabled.

已关闭 disabled:

System Integrity Protection status: disabled

如果是未关闭状态就需要关闭SIP了!

ARM M1 处理器关闭 SIP 步骤:
关机
按住开机键不松手直到出现选项画面,然后点击选项
点击继续
点击菜单栏的实用工具,再点击终端
输入csrutil disable,然后按下回车也就是 return 键
输入y,然后按下回车也就是 return 键
输入你的电脑密码,然后按下回车也就是 return 键
等待执行结果……
出现 System Integrity Protection is off. 证明 SIP 已成功关闭。
输入 reboot 然后按下回车也就是 return 键重启电脑即可。
如果后期想再开启 SIP,只需要将上面第 5 步的 csrutil disable 换成 csrutil enable 即可。

Intel 处理器关闭SIP步骤:
macOS 11.x Big Sur(Intel 处理器) 及以下系统关闭 SIP 步骤:
关机,然后重新启动你的Mac电脑,在开机时一直按住Command+R迸入Recovery模式。
进入Recovery模式后,分别点击 Utilities –> Terminal 来打开终端
在终端上输入命令 csrutil disable然后回车。
点击左上角苹果图标,再点击重新启动即可

最后修改:2024 年 01 月 24 日
咱们谁跟谁,用不着~