问题说明
通常在非 Mac App Store下载的软件都会提示“xxx已损坏,打不开。您应将它移到废纸篓”或者“打不开 xxx,因为它来自身份不明的开发者”。
原因
Mac电脑启用了安全机制,默认只信任Mac App Store下载的软件以及拥有开发者 ID 签名的软件,但是同时也阻止了没有开发者签名的 “老实软件”
解决方法
1. macOS Mojave 10.14及以下系统
# 打开「终端.app」,输入以下命令并回车,输入开机密码回车
$ sudo spctl --master-disable
2. macOS Catalina 10.15系统
# 打开「终端.app」,输入以下命令并回车,输入开机密码回车
$ sudo xattr -rd com.apple.quarantine 空格 软件的路径
# 如CleanMyMac X.app
$ sudo xattr -rd com.apple.quarantine /Applications/CleanMyMac X.app
# 快速获取软件路径方法:将软件拖入「终端app」即可获得路径
3. macOS Catalina 10.15.4 系统
# 1.打开「终端app」输入如下命令:
xcode-select --install
# 2.给软件签名
$ sudo codesign --force --deep --sign - (应用路径)
错误解决
# 1. /文件位置 : replacing existing signature
# 2. /文件位置 : resource fork,Finder information,or similar detritus not allowed
# 先在终端执行:
$ xattr -cr /文件位置(直接将应用拖进去即可)
# 然后再次执行如下指令即可:
$ codesign --force --deep --sign - /文件位置(直接将应用拖进去即可)
参考