如何在Mac上运行诊断:Apple诊断及其他
学习如何在任意Mac上运行Apple诊断以测试硬件、读取错误代码,以及何时需要升级处理。另外介绍当硬件通过检测但网络连接仍有问题时该怎么做。
您的Mac行为异常,您不确定是硬件问题、软件问题还是网络问题。运行诊断是正确的第一步,Apple提供了一个内置工具,可以在不启动macOS的情况下测试您的硬件。以下是如何使用它、它能告诉您什么,以及接下来该怎么做。
Apple诊断测试什么
Apple诊断是内置于每台Mac中的硬件测试工具。它独立于macOS运行,检查软件无法修复的组件:内存、存储、传感器、无线硬件和逻辑板。如果这些组件中的任何一个出现故障,Apple诊断会检测到它。
在Apple Silicon之前,这个工具叫做Apple硬件测试。名称改变了,启动方式也略有变化,但目的是相同的。
Apple诊断测试以下组件:
- 内存(RAM):检查可能导致崩溃、死机和数据损坏的内存错误
- 存储:扫描驱动器的硬件级别问题(不是软件损坏)
- 无线:测试Wi-Fi和蓝牙硬件
- 传感器:温度传感器、风扇和电池管理硬件
- 逻辑板:核心系统组件
如果您的Mac随机崩溃、运行过热、产生内核崩溃或行为不稳定,Apple诊断是正确的第一站。
如何运行Apple诊断
启动过程因Apple Silicon和Intel Mac而异。
Apple Silicon Mac(M1、M2、M3、M4及更高版本)
- 完全关机
- 按住电源按钮,直到看到"正在加载启动选项"
- 在启动选项屏幕上,按Command + D
- Apple诊断自动启动
Intel Mac
- 完全关机
- 按下电源按钮,然后立即按住D键
- 继续按住D键,直到看到进度条或语言选择屏幕
- Apple诊断自动启动
如果D键在Intel Mac上不起作用,请尝试Option + D。这会通过互联网启动Apple诊断,在本地版本似乎已损坏时很有用。
测试期间
Apple诊断会自动运行其检查。完整测试需要2-5分钟。您会看到一个进度条,完成后,您会看到"未发现问题"的消息或参考代码列表。
运行诊断之前,请将Mac连接到电源,并拔下所有不必要的配件(外部驱动器、USB集线器、外接显示器)。
读取Apple诊断参考代码
如果Apple诊断发现问题,它会返回一个或多个参考代码。这些代码会告诉您确切的故障部件。
格式:代码看起来像ADP000或NDC001。开头的字母表示故障的组件。
常见前缀:
| 前缀 | 组件 |
|---|---|
| PPM、PPT | 内存(RAM) |
| HDD、SSD | 存储 |
| NFL、NDC、NDD | Wi-Fi / 无线硬件 |
| VFD | 视频 |
| PFM | 电源 / 逻辑板 |
| ADP | 未发现问题(通过) |
Apple在support.apple.com/102562维护完整的参考代码查询表。在那里输入您的代码,可获得具体含义和建议的后续步骤。
如果您获得N系列的代码(NFL、NDC、NDD),说明您的Wi-Fi硬件有问题。这与软件连接问题不同。硬件级别的无线故障需要维修,而不是重装macOS。
运行Apple诊断后该做什么
未发现问题:您的硬件是健康的。导致问题的原因发生在软件或网络层面,而不是硬件层面。继续阅读接下来要检查的内容。
发现问题:记下参考代码。如果代码指向硬件故障,预约天才吧或联系Apple授权服务提供商。带上您的参考代码赴约。如果您的Mac在保修期内或有AppleCare,硬件维修可能在保障范围内。
测试结论不明确:重新运行。间歇性硬件问题有时在第一次运行时不会出现。如果您一直得到干净的结果但Mac仍然崩溃,问题可能是热量相关的(硬件在冷态下正常,但在负载下出现故障)。
Mac上的诊断层次
硬件故障是Mac问题的一个类别,但人们日常排查的大多数问题根本不是硬件故障。了解问题实际存在于哪里有助于您更快地诊断。
当Apple诊断给您的Mac开出健康证明时,问题就在上层。大多数连接问题都存在于网络层。
当硬件没问题时:网络诊断
一旦您确认硬件没有问题,连接问题就指向网络层。这是一种完全不同的故障排查方式。
网络问题有其自身的症状:
- 在一个网络上加载缓慢或超时,但在另一个网络上正常
- 特定网站或服务失败,而其他正常工作
- 视频通话延迟高,但下载速度快
- DNS解析失败(网站显示"找不到服务器",尽管网络是通的)
这些不是硬件问题。您的Wi-Fi芯片通过了诊断。问题在于数据包从Mac到服务器再返回的传输方式。
核心网络测试
Ping测量到主机的往返延迟。它告诉您是否能够到达某个目标,以及连接响应速度:
ping -c 10 8.8.8.8
路由追踪映射您的Mac和目的地之间的每一个路由器跳点,显示延迟或故障发生的位置:
traceroute google.com
DNS查询检查您的DNS解析器是否正常工作并返回正确的地址:
nslookup apple.com
这三个测试能告诉您问题在网络的哪个位置。高Ping时间指向延迟,路由追踪显示哪个跳点速度慢,DNS查询失败指向解析器问题。
不用终端
如果您不想在终端中操作,NetUtil通过简单的界面运行所有这些测试。输入主机名,选择测试,以清晰的格式查看结果。当您按顺序进行多个测试时,它特别有用,因为您不需要记住每条命令的语法,也不用管理多个终端窗口。
NetUtil还包括端口扫描、Whois查询和其他在网络故障排查中用到的工具。所有功能都集中在一个地方。
Mac诊断的正确顺序
当您的Mac出现问题而不知道从哪里开始时:
-
首先运行Apple诊断。 只需五分钟,可以完全排除硬件因素。如果发现问题,您有了明确的下一步。如果没有发现问题,您可以继续,知道硬件不是原因。
-
接下来检查系统软件。 如果诊断通过了,查看最近的macOS更新、应用安装或可能解释该行为的权限更改。
-
如果涉及连接问题,运行网络测试。 Ping、路由追踪和DNS查询可以缩小问题在网络路径中的位置。
-
最后测试特定应用程序。 如果应用层以下的所有层都没问题,问题就在应用本身。
这个顺序节省时间,因为硬件和网络问题有具体的、可测试的答案。您要么有内存错误,要么没有;数据包要么能到达Google的DNS,要么不能。软件问题更复杂,但您先排除容易的答案。
Mac启动诊断:其他模式
了解Apple诊断的同时,还有两种值得知道的其他启动模式:
安全模式:在Intel Mac上按住Shift启动,或在Apple Silicon上在启动选项屏幕出现后按住Shift。安全模式加载最小版本的macOS,并禁用第三方扩展。如果您的Mac在安全模式下正常工作但在其他情况下出现问题,第三方内核扩展或启动项是原因所在。
恢复模式:在Intel Mac上按住Command + R,或在Apple Silicon上按住电源按钮直到出现启动选项,然后选择"选项"。恢复模式让您访问磁盘工具、时间机器恢复和macOS重装选项。如果您的系统软件已损坏,请使用此选项。
Apple诊断与这两种模式不同。它在macOS加载之前独立测试硬件。
总结
当您怀疑Mac存在硬件问题时,Apple诊断是正确的起点。过程很简单:在启动时按住D键(或从Apple Silicon启动选项屏幕按Command + D),等待几分钟,然后阅读结果。如果有问题,参考代码会指引您找到正确的维修方案。
当硬件通过测试时,向上移动一层。网络问题是下一个最具体的类别,可以用Ping、路由追踪和DNS查询进行测试。NetUtil使这些测试无需终端即可访问。
目标是在开始修复任何问题之前,先知道问题存在于哪一层。