Mac提示软件已损坏的解决方案
问题说明
如果直接下载的可执行文件, 可能会出现: MAC报错: unable to execute xxx : Operation not permitted 问题
通常在非 Mac App Store下载的软件都会提示“ xxx已损坏,打不开。您应将它移到废纸篓
”或者“ 打不开 xxx,因为它来自身份不明的开发者
”。
问题原因
Mac电脑启用了安全机制,默认只信任Mac App Store下载的软件以及拥有开发者 ID 签名的软件,但是同时也阻止了没有开发者签名的 “老实软件”
解决方法
- 打开允许任何来源软件 :
sudo spctl --master-disable
, 此行代码可以让 Mac 允许安装第三方来源的应用 - 按照上述步骤操作完成后,打开「系统偏好设置」-「安全与隐私」-「通用」,确保已经修改为「任何来源」。
macOS Catalina 10.15系统
执行以下命令
sudo xattr -rd com.apple.quarantine 软件的路径
如 QQ.app, 则执行 sudo xattr -rd com.apple.quarantine /Applications/QQ.app
, /Application/xxx.app 为软件安装路径
macOS Catalina 10.15.4 系统
更新10.15.4系统后软件出现意外退出,可按照下面的方法给软件签名
- 安装基础工具 : xcode-select --install
- 给软件签名 : sudo codesign --force --deep --sign - 应用路径
- 错误解决: 如果出现以下错误
文件位置 : replacing existing signature
或者文件位置 : resource fork,Finder information,or similar detritus not allowed
, 那么首先执行xattr -cr 应用路径
, 然后再次执行codesign --force --deep --sign - 应用路径
即可