目前进行硬盘检测主要通过两种手段,一种是通过每个扇区(Sector)进行逐一测试,找出损坏的扇区;另外一种是通过S.M.A.R.T信息来监控硬盘状况。
扇区检测
这个方法是传统方法,通过对硬盘上每一个扇区进行逐一访问,来了解这个硬盘是否有损坏的扇区。扇区的损坏有些是可以修复的,可以通过将这个扇区标记起来,让程序不再访问这个位置,来达到修复的目的。不过,如果硬盘使用的时间长了,坏扇区的出现是一个从少到多的过程,这种情况下修复一批扇区以后,很快就又会出现一批新的损坏,这时候,应该更换整个硬盘。
扇区检测的时间比较长,就目前我使用的情况,120G的硬盘大约要检测35分钟,而160G的硬盘大约要检测1个小时。
现代硬盘都有重新映射技术。硬盘发现一个读、写或校验错误时,会将这个扇区重新映射(Reallocated)并将数据转移到一个特殊的保留的空闲区域。 也就是说,现代的硬盘是无法通过表面检测来发现“坏块”(Bad Blocks)的,所有的坏块都被隐藏到了重新映射的扇区里面了。
即便如此,扇区检测还是有意义的,毕竟对每个扇区都读写了,虽然可能找不到坏块,但是S.M.A.R.T.中会出现错误计数,可以通过检查这些计数来判断硬盘是否快不行了。
S.M.A.R.T.
本小节内容主要来自于维基百科:Self-Monitoring, Analysis, and Reporting Technology。
S.M.A.R.T.,是Self-Monitoring, Analysis, and Reporting Technology的简称,即自我监测、分析和报告技术,由硬盘自身探测和报告各种和可靠性参数,来预测硬盘损坏。
硬盘的由两类损坏,可预见损坏和不可预见损坏。可预见损坏包括机械磨损和老化等,这些损坏是逐渐发生的,可以通过监测来感知,从而知道硬盘目前的状况。不可预见损坏指那些瞬间发生无法预测的损坏,比如电子元件的损坏。
可预见损坏占到所有硬盘损坏的60%,所有硬盘损坏的30%可以被S.M.A.R.T.预测到。据来自Google的数据显示,他们那里有大约100,000块硬盘在同时工作,第一次S.M.A.R.T.预测到损坏可能后,硬盘在60天内真正损坏的概率比S.M.A.R.T.没有预测到损坏的硬盘高39倍。所以一旦S.M.A.R.T.报警,不一定要真的替换硬盘,但是应该开始备份数据了。
S.M.A.R.T.信息并不能告诉你硬盘过去和现在是不是稳定,只能在出现不良信号的时候,告诉你硬盘快不行了。S.M.A.R.T.信息也不可能告诉你未来什么时候快不行了。
硬盘的使用寿命
硬件厂商喜欢用MTBF来说明硬盘的使用寿命,即Mean Time Between Failures,平均故障间隔时间。目前一块SATA接口的硬盘通常有600,000小时(约68年)的寿命,而西部数据宣称他们的Raptor(猛禽)硬盘拥有1,2000,000小时(约137年)的寿命。但是这些都是实验室数据,硬盘使用的环境和机箱内部的情况千差万别,所以这些数据都只有一点点对比的作用,并不能代表硬盘的真正寿命。
业界也还使用年损坏率(Annualized Failure Rate,AFR)来表明他们厂家的硬盘好坏,其实从计算公式看,这是个从MTBF算出来的数据,没有预计硬盘使用寿命的价值,个人以为还不如MTBF。
在S.M.A.R.T.中有一项通电时间(Power On Hours,POH),表明了硬盘使用的小时数,根据以上的分析,这个数据只能表明硬盘用了多久,但是无法表明硬盘什么时候会坏,这个数据通常没有上限。
硬盘检测软件
目前可以了解硬盘状况的软件主要有Active Smart、HD Tune、Norton Disk Doctor和西部数据出品的检测工具。从实用程度来说,HD Tune目前功能比较全面,也比较好用,而Active Smart拥有一个比较综合的评分机制。
Active Smart
Active Smart是Ariolic Software的产品,付费软件,可以下载30天试用版,目前版本2.6。目前尚未找到破解版本。这个软件可以根据S.M.A.R.T.信息的日志,来计算一个硬盘的生命期和健康程度,这是软件的主要特色。不过,不要太相信这些东西,S.M.A.R.T.信息原理上并不能推导出这类结果。
值得注意的是,Active Smart会驻留一个服务在内存里面,这往往不是用户期望的。一般而言,隔一段时间看以下S.M.A.R.T.信息就足够了,没有必要时时监测。
HD Tune
HD Tune来自HDTune.com,免费软件,目前版本2.54。这是一款小巧易用的硬盘工具软件,其主要功能有硬盘传输速率检测,健康状态检测(S.M.A.R.T.信息),温度检测及磁盘表面扫描等。这些功能其它软件也有,但此软件把所有这些功能积于一身,而且非常小巧,速度快,不驻留内存,所以算是比较令人满意的软件。
这个软件在国内广受欢迎,所以有人精心制作了汉化版本,做得挺好的。如果不要Help文件的话,这个软件其实只要一个HDTune.exe就可以用了,无需安装。
Norton Disk Doctor
Norton Disk Doctor实际上是Norton Utilities中的一个小程序,一般专业用户都把它拿出来单独使用。这个软件的主要功能就是进行硬盘表面检测。这个软件在Symantec网站没有下载,不过可以在网上找到。目前版本2007。
West Digital – Data Lifeguard Diagnostic
这是个西部数据(Western Digital)提供的硬盘检测工具,免费软件,可以从西部数据下载,可以让用户对硬盘进行简单测试、扩展测试,主要也就是进行硬盘表面测试。注意,这个软件的“写入零”测试会导致硬盘数据全部写成零,如果真要做,建议对新硬盘进行。
西部数据另外还提供一款叫做Data Lifeguard Tools的工具,这个工具不会进行硬盘检测,是用来进行设置(Setup)工作的。
硬盘的品牌
从2007的数据看,98%硬盘市场为4家大公司占据:希捷Seagate(现在买下了迈拓Maxtor),西部数据Western Digital,三星Samsung,日立Hitachi (买下了IBM的硬盘生产部门)。从他们提供的质保来看,一般提供3年质保,少数提供5年质保,据此可以判断,目前市场上的大多数硬盘使用寿命在3~5年。
S.M.A.R.T属性表
S.M.A.R.T.包含很多个属性,每个属性值只有两种含义,超过阀值(threshold)和没有超过阀值。一旦有属性值超过了阀值,表明“硬盘快不行了”。每个硬盘的S.M.A.R.T.信息中,都注明了这些属性的阀值,不同厂家的阀值是不同的。不同的属性值对于阀值的对比关系也有两种情况,应大于阀值和应小于阀值。不同的属性也有不同的价值,下面用醒目颜色表明的是那些比较重要的属性。
- 01(01) 读取错误率 Read Error Rate (应小于阀值)
硬件读取错误率,在从磁盘表面读取数据发生错误时记录。任何大于0的数据表明在磁盘表面或者读写柱头(read/write heads)发生过问题。
- 05(05) 重新映射扇区计数 Reallocated Sectors Count (应小于阀值)
重新映射扇区的计数值。硬盘发现一个读、写或校验错误时,会将这个扇区重新映射(Reallocated)并将数据转移到一个特殊的保留的空闲区域,这些区域就称为重新映射扇区。 也就是说,现代的硬盘是无法通过表明检测来发现“坏块”(Bad Blocks)的,所有的坏块都被隐藏到了重新映射的扇区里面了,当然这样读写速度会变慢。
- 09(09) 通电时间计数 Power-On Hours Count,POH (越小越好,通常无阀值)
通电状态下的小时计数。这个值表示了硬盘通电状态下总计的小时计数,不过不同厂家这个值的单位有所不同,也有以分钟、秒钟为单位的。
- 10(0A) 马达重试计数 Spin Retry Count (应小于阀值)
马达尝试启动的重试计数。这个属性存储了马达为了达到标准转速而进行的启动尝试的总计数,即第一次启动并不能成功达到标准转速。这个属性值的增加是一个标志,说明硬盘的机械系统出现了问题。
- 12(0C) 通电周期计数 Power Cycle Count (越小越好,通常无阀值)
这个属性表明了整个硬盘通电/去电周期的次数,即开关次数。
- 194(C2) Temperature (越小越好,通常无阀值)
当前内部温度。
- 196(C4) 重新映射事件计数 Reallocation Event Count (应小于阀值)
重新映射操作的计数值。这个属性值表明了将重新映射扇区的数据转移到空闲区域的尝试总次数。成功的转移和不成功的转移都会被计数。
- 197(C5) 当前待映射扇区计数 Current Pending Sector Count (应小于阀值)
“不稳定的”扇区数量,即等待被映射的扇区数量。 如果不稳定的扇区随后被读写成功,这个值会降低,扇区也不会重新映射。扇区读取错误不会造成重新映射,扇区只会在写入失败时发生重新映射。这个值有时候会有问题,因为带缓存写入不会重新映射扇区,只有直接读写才会真正写入磁盘。
- 198(C6) 无法校正扇区计数 Uncorrectable Sector Count (应小于阀值)
读写扇区时发生的无法校正的错误总计数。这个值上升表明硬盘表明有缺损或者机械系统有问题。
- 199(C7) 直接内存访问校验错误计数 UltraDMA CRC Error Count (应小于阀值)
通过接口循环冗余校验(Interface Cyclic Redundancy Check,ICRC)发现的通过接口电缆进行数据传输的错误。
- 200(C8) 写入错误率 Write Error Rate (应小于阀值)
写入一个扇区时发生错误的总数。
参考资料
波波坡原创文章 链接:http://www.bobopo.com/article/code/harddisk_smart.htm
关键词: 硬盘检测, 硬盘寿命, S.M.A.R.T., SMART, 检测软件, 扇区检测, SMART属性, Active Smart, HD Tune, Noton Disk Doctor, Data Lifeguard Diagnostic
创建日期: 2008-01-13
转载请注明:在路上 » 硬盘检测、寿命、S.M.A.R.T.和硬盘检测软件