最近给一台 2019 款 Mac Pro(MacPro7,1)安装 macOS 更新时,连续遇到了同一个严重问题:更新进行到重启阶段后无法正常完成,机身状态指示灯橙色闪烁,最后只能拔掉电源才能重新开机。系统虽然还能回到桌面,但版本没有更新成功。
这不是一次普通的下载失败。系统日志最终证明,真正失败的是 Apple T2 安全芯片内部的 BridgeOS 固件升级。通过另一台 Mac 执行一次不抹除数据的 DFU Revive 后,T2 固件成功更新,随后 macOS 也顺利完成升级。
问题现象
这台 Mac Pro 原本运行:
1 | macOS 26.5.2 (25F84) |
升级 macOS 26.6.2 时,两次出现几乎相同的情况:
- 更新包能够正常下载和准备;
- 系统进入重启安装阶段;
- 安装到一半无法继续;
- Mac Pro 状态指示灯橙色闪烁;
- 长时间没有恢复,只能拔掉电源;
- 再次开机后仍是 macOS 26.5.2。
与此同时,平时使用中还出现了窗口切换、应用聚焦和中文输入延迟。最初怀疑过显卡、内存和磁盘,但这些并不能解释为什么系统更新总是在重启阶段失败。
第一轮排除:磁盘、内存和温度
首先检查常见硬件因素:
- 128 GB 内存全部识别正常,ECC 状态正常;
- 内存压力很低,没有发生 Swap;
- Apple SSD 的 SMART 状态为
Verified; - APFS 在线校验通过,文件系统没有错误;
- 系统盘仍有约 50 GB 可用空间;
- 没有温度或性能限制告警。
执行 APFS 只读校验:
1 | diskutil verifyVolume / |
结果为:
1 | The volume appears to be OK |
这些结果基本排除了内存损坏、系统盘故障、空间耗尽和过热降频。
更新历史留下的矛盾
查看系统更新历史:
1 | softwareupdate --history |
其中出现了两条 macOS 26.6.2 记录:
1 | macOS Tahoe 26.6.2 26.6.2 2026/09/05 17:55:29 |
但当前运行的系统仍然是:
1 | System Version: macOS 26.5.2 (25F84) |
这说明更新流程曾经进入安装阶段,甚至写入了历史记录,但最终启动验证失败并回滚到了旧系统。
APFS 中还残留了未完成更新的准备快照:
1 | com.apple.os.update-MSUPrepareUpdate |
NVRAM 的启动目标也仍指向:
1 | com.apple.installer\boot.efi |
到这里,问题已经从“更新包下载失败”缩小到了“重启后的系统或固件切换失败”。
铁证:BridgeRestore 报告
更新失败后,系统生成了两组非常关键的诊断文件:
1 | BridgeRestore_2026-09-05-175923_*.bridge_restore.log |
BridgeRestore 日志显示,本次更新不只包含 macOS,还要求把 T2 内部的 BridgeOS 从以下版本升级:
1 | 当前版本:23P5067 |
安装程序在写入阶段一度报告:
1 | Apply complete |
但机器重新启动后,固件验证发现实际运行的依旧是旧版本 23P5067,最终记录:
1 | BridgeOSSoftwareUpdateError Code=21 |
这就是整个问题的核心:BridgeOS 看似写入成功,但重启后没有切换到新固件,系统只能回退。macOS 更新因此也无法继续。
橙色指示灯意味着什么
Apple 对 2019 款 Mac Pro 的橙色指示灯有明确说明:
- 每秒一次短橙灯:内存检测或数据错误;
- 橙灯闪两次并循环:PCIe 扩展卡错误;
- 三次快闪、三次较慢闪烁、再三次快闪:固件恢复模式。
本机内存检查正常,而失败日志明确指向 BridgeOS,因此更新阶段的橙灯与固件恢复状态高度吻合。
官方说明:Mac Pro (2019) status indicator light behavior
如果再次遇到类似问题,最好记录橙灯的具体节奏。它能帮助区分固件、PCIe 扩展卡和内存故障。
为什么不继续直接重试更新
同一版本已经连续失败两次,而且两次都停在相同的 BridgeOS 切换阶段。继续点击“立即更新”只会重复使用同一套固件状态,成功概率很低,还会增加再次异常断电的风险。
这台 Mac Pro 还安装了多张第三方 PCIe 设备,包括一张 macOS 没有完整驱动支持的 NVIDIA 显卡和额外的 NVMe 控制器。它们是潜在干扰项,但日志并没有证明某一张卡直接导致了此次失败。因此没有一开始就拆卡,而是先处理已经被日志确认异常的 T2 固件状态。
修复方案:DFU Revive Mac
Apple 为带 T2 芯片的 Mac 提供了两种 DFU 操作:
- Revive Mac:重新写入固件和恢复环境,正常情况下不抹除用户数据;
- Restore Mac:抹除设备并恢复出厂状态。
本次选择的是 Revive Mac。不要误点 Restore。
官方步骤:How to revive or restore Mac firmware
准备工作
需要:
- 另一台运行 macOS 14 或更高版本的 Mac;
- 一根支持数据和充电的 USB-C 对 USB-C 线;
- 两台 Mac 都有稳定供电;
- 辅助 Mac 能够正常连接互联网;
- 重要数据已经备份。
Apple 特别说明不要使用 Thunderbolt 3 线,也不要通过扩展坞连接。辅助 Mac 上如果启用了 VPN、代理或网络过滤软件,建议暂时关闭,确保能够访问 Apple 网络。
找到 Mac Pro 的 DFU 端口
2019 款塔式 Mac Pro 的 DFU 端口位于机身顶部:
两个 USB-C 端口中,距离电源按钮最远的那个。
官方端口说明:How to identify the DFU port on Mac
进入 DFU 模式
- 在辅助 Mac 上打开 Finder,并保持联网和接通电源;
- 用 USB-C 数据线连接辅助 Mac 与 Mac Pro 的 DFU 端口;
- 拔掉 Mac Pro 上其他非必要 USB 设备;
- 拔掉 Mac Pro 的电源线;
- 按住 Mac Pro 电源按钮不放;
- 保持按住电源按钮,同时重新插入电源线;
- 继续按住最多 10 秒,直到辅助 Mac 的 Finder 显示
Mac DFU Mode; - 此时 Mac Pro 黑屏属于正常现象。
执行 Revive
在辅助 Mac 的 Finder 中:
- 选择侧边栏里的 DFU Mac;
- 点击
Revive Mac; - 点击继续确认;
- 等待固件下载、写入和验证;
- 期间不要断电、拔线或让辅助 Mac 休眠。
完成后 Mac Pro 自动重新启动。
验证 DFU 修复结果
Revive 完成后,检查硬件信息:
1 | system_profiler SPHardwareDataType |
修复前:
1 | System Firmware Version: 2103.100.6.0.0 |
修复后:
1 | System Firmware Version: 2103.160.2.0.0 |
目标 BridgeOS 固件终于真正生效。这一步证明 DFU Revive 已修复之前无法切换固件的问题。
需要注意,Revive 完成后 macOS 仍然是 26.5.2,这是正常的。Revive 修复的是底层固件,并不会替代后续的 macOS 安装。
再次安装 macOS 更新
确认固件版本正确后,重新安装 macOS 26.6.2。这一次更新正常完成。
最终状态:
1 | System Version: macOS 26.6.2 (25G83) |
更新历史新增了真正成功的记录:
1 | macOS Tahoe 26.6.2 26.6.2 2026/09/08 21:14:12 |
再次扫描更新时,系统返回没有可用更新。之前残留的 MSUPrepareUpdate 快照也已经消失,只保留当前系统正常使用的启动快照。
最终结论
这次故障的完整因果链是:
1 | macOS 26.6.2 要求升级 T2/BridgeOS |
真正的根因不是系统盘、内存容量或下载包,而是 T2 的 BridgeOS 固件没有在重启后成功切换到目标版本。
经验总结
- “更新历史里有记录”不代表当前系统真的升级成功。 一定要同时检查
sw_vers或系统信息中的实际版本。 - Mac Pro 橙灯的闪烁节奏是硬件诊断信息。 两次循环、每秒一次和 3-3-3 分别指向不同问题。
- 带 T2 芯片的 Mac 更新失败,要检查 BridgeRestore 日志。
BridgeOSSoftwareUpdateError Code=21是这次最关键的证据。 - 连续在同一阶段失败时,不要盲目反复更新。 先修复固件状态,再继续系统升级。
- DFU Revive 和 Restore 完全不同。 Revive通常保留数据;Restore会抹除设备。操作前仍应做好备份。
- 第三方 PCIe 卡是后续排查项。 如果 Revive 仍然失败或橙灯呈两次循环,再考虑暂时拆除非必要显卡、NVMe卡和其他扩展设备。
- 异常断电只能作为最后手段。 固件写入期间断电可能让问题进一步恶化,出现固件恢复灯号时应优先按Apple的DFU流程处理。
一次看起来像“macOS更新卡住”的故障,最终发生在操作系统下面的T2固件层。最容易被忽略的地方,恰恰是日志中那句:
1 | update failed back into same OS |
找到这一句后,后面的修复路径就清晰了:先Revive固件,再更新系统。

