macOS 解决 AirDrop 传输应用“已损坏“问题,以sublime为例

问题现象

通过 AirDrop 从其他设备传输应用到 Mac 后,双击打开时提示:

复制代码
"XXX.app" 已损坏,无法打开。您应该将它移到废纸篓。

问题原因

这不是文件真的损坏了,而是 macOS 的 Gatekeeper 安全机制在作祟。

当应用通过 AirDrop、浏览器下载等方式获取时,macOS 会自动给文件打上 com.apple.quarantine(隔离)标记。对于未经 Apple 公证或签名的应用,系统会直接拒绝打开,并显示"已损坏"的误导性提示。

解决方案

方法 1:移除隔离属性(推荐)

打开终端,执行以下命令:

bash 复制代码
xattr -d com.apple.quarantine /Applications/你的应用.app

示例(以 Sublime Text 为例):

bash 复制代码
xattr -d com.apple.quarantine /Applications/Sublime\ Text.app

注意

  • 如果应用在其他位置(如 ~/Downloads),需要修改路径
  • 文件名中有空格需要用反斜杠转义(如 Sublime\ Text.app

如果提示权限不足,加上 sudo

bash 复制代码
sudo xattr -d com.apple.quarantine /Applications/Sublime\ Text.app

方法 2:右键打开(临时绕过)

  1. 在 Finder 中找到应用
  2. 按住 Control 键点击(或右键)
  3. 选择「打开」
  4. 在弹出的警告中点击「打开」

缺点:每次打开都需要这样操作,不如方法 1 彻底。

方法 3:系统设置放行

  1. 双击应用(会报错)
  2. 打开「系统设置」→「隐私与安全性」
  3. 向下滚动,找到"XXX 已被阻止"的提示
  4. 点击「仍要打开」

为什么不推荐 xattr -cr

网上很多教程使用 xattr -cr(递归清除所有扩展属性),但在新版 macOS(Ventura+)上可能会遇到:

复制代码
xattr: [Errno 1] Operation not permitted

这是因为 -c 会尝试清除所有扩展属性,包括受 SIP(系统完整性保护)保护的属性。而 -d com.apple.quarantine 只删除隔离标记,更安全且成功率更高。

扩展知识

查看文件的扩展属性

bash 复制代码
xattr /Applications/你的应用.app

如果输出包含 com.apple.quarantine,说明文件被隔离了。

批量处理多个应用

bash 复制代码
cd /Applications
for app in *.app; do
  xattr -d com.apple.quarantine "$app" 2>/dev/null
done

安全提示

⚠️ 移除隔离属性会绕过 macOS 的安全检查,请确保应用来源可信。建议:

  • 只对来自可信来源的应用使用此方法
  • 优先从官网下载或使用 Homebrew 等包管理器安装
  • 不要对来历不明的应用执行此操作

总结

遇到 AirDrop 传输应用"已损坏"的问题,一条命令即可解决:

bash 复制代码
xattr -d com.apple.quarantine /Applications/应用名.app

简单、高效、不需要关闭系统安全设置。


参考资料

相关推荐
老兵发新帖4 小时前
软件开发国内常用镜像源配置及回退方法(MAC版)
macos·软件工程
qq_411262429 小时前
ESP32-C5 软件配置MAC 地址
macos
互联网散修9 小时前
零基础鸿蒙应用开发第二十八节:商品排序体系之工厂与策略模式
策略模式·鸿蒙
鸠摩智首席音效师9 小时前
如何在 MacOS 上安装 PostgreSQL ?
数据库·macos·postgresql
stevenzqzq9 小时前
架构设计深度解析:策略模式 + 抽象工厂在UI适配中的高级应用
ui·策略模式
花千树-01010 小时前
IndexTTS2 在 macOS 性能最佳设置(M1/M2/M3/M4 全适用)
人工智能·深度学习·macos·ai·语音识别·ai编程
zhensherlock1 天前
Protocol Launcher 系列:Agenda 优雅组织你的想法与日程
javascript·macos·ios·typescript·node.js·mac·ipad
ipy2Tf8WP1 天前
全程用 Claude Code 搓了一个 macOS 原生应用:SkillDeck
macos
eLIN TECE1 天前
Mac安装Redis步骤
redis·macos·bootstrap
独隅1 天前
在 MacOS 上部署 Keras 模型的全面指南
人工智能·macos·keras