Igor's Blog

I love cool stuffs

MacBook Pro 硬盘异响原因及解决

MacBook Pro在安静的时候会发出轻微金属撞击的声音,这篇文章简单讨论了引起该声音的原因及解决办法。


最近在我的 MacBook Pro (15-inch, Mid 2012) 上,特别是安静的时候,硬盘会随机出现类似于“啪嗒”的声音。

Google了一下“Mac HDD random clicking noise”,发现很多人都被类似的问题困扰,而且症状千奇百怪。OS X下磁碟式硬盘出现这类异响一般有三个原因:

  1. 突发移动感应器 ( Sudden Motion Sensor ) 的作用:

    现在的很多移动设备都含有类似于“突发移动感应器”的装置,如 Thinkpad 的“ Active Protection System ”和 Sony 的“ HDD Protection ”,关于“突发移动感应器”Apple是这样解释的:

    突发移动感应器的设计旨在检测异常强烈的震动、位置突然改变和加速移动。如果感应器检测出上述任意问题,其会立即停止硬盘驱动器磁头,以降低因撞击造成硬盘驱动器损坏的可能性。磁头停止可能伴随有轻微的咔嚓声或“叮当”声,这是意料之中的正常现象。如果您正积极播放视频、音频或执行其他类似任务,可能会发现在 SMS 参与时任务会暂停。只要 SMS 处于可以脱离的状态,任务就该恢复。

    SMS 探测到电脑的位置再次稳定后,便会解开对硬盘驱动器磁头的锁定,并恢复为正常运营。
    但我并没有在移动中使用 MacBook Pro,所以这不是问题所在。
  2. 硬盘损坏噪音,也就是传说中的“ Click of death ”:

    这大概是最恶劣的情况。在这种情况下的硬盘异响是由于硬盘中磁头悬臂的异常运动所引起。在磁盘读取过程中,磁头悬臂为读取数据应移动到相应的位置,但如果因种种原因导致了磁头悬臂无法正常读取磁盘表面的数据,从而引发错误。硬盘控制芯片可能会通过取消操作来忽略这个错误,这时就会引发“啪嗒”的声音;另一些磁盘控制器反复尝试读取数据则会引起持续的“啪嗒”声。 [1]
    详情参见 Wikipedia 上的 Click of death 词条。

    如果真是这样的话就要考虑换个硬盘了,而且数据极有可能丢失。

  3. 磁头悬臂停靠而引起的噪声:

    在 Apple Support 里有这么一个页面:Apple 便携式电脑:硬盘驱动器和噪音

    节选其中的一部分:

    在磁头停止时会发出咔哒声(驱动器闲置一段时间后便会停止磁头动作)。停止磁头有利于保护数据,因为当电脑掉落或进行搬移时,如果磁头未在驱动器盘片上方,则驱动器便不太容易丢失数据。
    注:即使您正在频繁使用电脑,硬盘驱动器也可能进入闲置状态。 电脑进入睡眠状态或从睡眠状态唤醒时,您也可能听到这种声音。在硬盘驱动器加载和卸载读/写磁头时,发出这种声音属于正常现象。

    事实上这种被称为硬盘高级电源管理 ( Advanced Power Management (APM) ) 的功能在符合 ATA/ATAPI-4 标准以上的硬盘上都有,对设备的节能有帮助,但相对应的会对磁盘性能产生影响。[2]

好了,至此我祈祷自己听到的只是悬臂停靠的声因。

首先想尝试关闭 APM 功能,首先在节能选项里看到了“如果可能,使硬盘进入睡眠”的选项(如下图)。

但是,尝试勾选掉它后仍然能听到随机的“咔嗒”声。

接下来在macrumors论坛里看到了一款名为hdapm的软件,该软件的描述翻译如下:

hdapm 是一款使用命令行工具设置硬盘 APM 等级的工具。 它可以减弱一些笔记本硬盘的“闲置噪音”。

下载后安装。

打开命令行后输入(注意,disk0 是系统盘所在位置):

$ sudo hdapm disk0 max

问题解决了,说明“咔嗒”声确实是磁头悬臂停靠所引起。

这时的电耗可能也会高一些,此外,如果想要还原的话输入以下命令即可:

$ sudo hdapm disk0 default

关于这个软件更多的细节可以参考这里


参考链接:

[1] Click of death - Wikipedia, the free encyclopedia:
http://en.wikipedia.org/wiki/Click_of_death;

[2] Hard Disk Drive Advanced Power Management (APM):
http://www.smarthdd.com/en/apm.htm