美文网首页
理解S.M.A.R.T.格式及从中获取硬盘状态信息

理解S.M.A.R.T.格式及从中获取硬盘状态信息

作者: 吾星喵 | 来源:发表于2019-07-18 20:45 被阅读0次

    更多内容请点击 我的博客 查看,欢迎来访。

    得到SMART列表

    PS C:\Windows\system32> wmic /NameSpace:\\root\wmi Path MSStorageDriver_ATAPISmartData get VendorSpecific /value
    

    结果

    >>
    
    
    VendorSpecific={1,0,5,51,0,100,100,0,0,0,0,0,0,0,9,50,0,96,96,159,73,0,0,0,0,0,12,50,0,99,99,191,3,0,0,0,0,0,177,19,0,83,83,197,0,0,0,0,0,0,179,19,0,100,100,0,0,0,0,0,0,0,181,50,0,100,100,0,0,0,0,0,0,0,182,50,0,100,100,0,0,0,0,0,0,0,183,19,0,100,100,0,0,0,0,0,0,0,187,50,0,100,100,0,0,0,0,0,0,0,190,50,0,57,52,43,0,0,
    0,0,0,0,195,26,0,200,200,0,0,0,0,0,0,0,199,62,0,100,100,0,0,0,0,0,0,0,235,18,0,99,99,94,0,0,0,0,0,0,241,50,0,99,99,22,236,86,32,6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
    ,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
    
    
    VendorSpecific={10,0,1,15,0,118,99,80,162,5,11,0,0,0,3,3,0,100,97,0,0,0,0,0,0,0,4,50,0,99,99,227,4,0,0,0,0,0,5,51,0,100,100,0,0,0,0,0,0,0,7,15,0,63,60,112,157,30,0,0,0,0,9,50,0,77,77,145,81,0,0,0,0,0,10,19,0,100,100,0,0,0,0,0,0,0,12,50,0,100,100,176,1,0,0,0,0,0,183,50,0,100,100,0,0,0,0,0,0,0,184,50,0,100,100,0,0,0,0
    ,0,0,0,187,50,0,100,100,0,0,0,0,0,0,0,188,50,0,100,97,7,0,0,0,0,0,0,189,58,0,100,100,0,0,0,0,0,0,0,190,34,0,56,51,44,0,31,45,0,0,0,194,34,0,44,49,44,0,0,0,15,0,0,195,26,0,48,27,80,162,5,11,0,0,0,197,18,0,100,100,0,0,0,0,0,0,0,198,16,0,100,100,0,0,0,0,0,0,0,199,62,0,200,200,0,0,0,0,0,0,0,240,0,0,100,253,195,7,0,0,255
    ,11,54,241,0,0,100,253,118,152,49,22,0,0,0,242,0,0,100,253,167,27,180,69,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
    
    
    VendorSpecific={10,0,1,15,0,118,99,194,134,188,11,0,0,0,3,3,0,100,100,0,0,0,0,0,0,0,4,50,0,98,98,201,8,0,0,0,0,0,5,51,0,100,100,0,0,0,0,0,0,0,7,15,0,75,60,191,164,252,4,2,0,0,9,50,0,81,81,245,65,0,0,0,0,0,10,19,0,100,100,0,0,0,0,0,0,0,12,50,0,100,100,146,3,0,0,0,0,0,183,50,0,100,100,0,0,0,0,0,0,0,184,50,0,100,100,0,
    0,0,0,0,0,0,187,50,0,100,100,0,0,0,0,0,0,0,188,50,0,100,99,1,0,0,0,0,0,0,189,58,0,100,100,0,0,0,0,0,0,0,190,34,0,58,52,42,0,31,43,0,0,0,194,34,0,42,48,42,0,0,0,6,0,0,195,26,0,39,20,194,134,188,11,0,0,0,197,18,0,100,100,0,0,0,0,0,0,0,198,16,0,100,100,0,0,0,0,0,0,0,199,62,0,200,200,0,0,0,0,0,0,0,240,0,0,100,253,86,70,
    0,0,24,226,12,241,0,0,100,253,136,172,111,213,0,0,0,242,0,0,100,253,218,107,110,251,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
    

    S.M.A.R.T.解释

    https://zh.wikipedia.org/wiki/S.M.A.R.T.

    S.M.A.R.T.,全称为“Self-Monitoring Analysis and Reporting Technology”,即“自我监测、分析及报告技术”,是一种自动的硬盘状态检测与预警系统和规范。通过在硬盘硬件内的检测指令对硬盘的硬件如磁头、盘片、马达、电路的运行情况进行监控、记录并与厂商所设定的预设安全值进行比较,若监控情况将或已超出预设安全值的安全范围,就可以通过主机的监控硬件或软件自动向用户作出警告并进行轻微的自动修复,以提前保障硬盘数据的安全。除一些出厂时间极早的硬盘外,现在大部分硬盘均配备该项技术。

    运行原理

    该技术所需数据被存放在硬盘物理盘面最前面的磁道中,由硬盘制作商将相关管理程序和数据该磁道中,包括加解密程序,自监控程序,自修复程序等,主机的监控软件可以通过“SMART RETURN STATUS”的命令读取S.M.A.R.T.信息,且这些信息不允许被用户修改。

    检测属性列表

    下面将列出一些S.M.A.R.T.的原始检测属性和含义。普遍为检测值越高性能越好。即使所有制造商都必须遵守共同的规则,但由于有些检测值在不同硬盘制造商中用不全相同的定义和计量方法而对于不同制作商来说检测值不全是越高越好,所以下面属性的指标只作一般参考。除外,各制造商也会根据自己需要添加一些自己专有的检测属性。

    ID ID十六进制值 英文名 中文译名 最优 说明
    1 0x01 Read Error Rate 底层数据读取错误率 存储器从一个硬盘表面读取数据时发生的错误率。原始值由于不同厂商的不同计算方法而有所不同,其十进制值往往无意义的。
    2 0x02 Throughput Performance 读写通量性能 通常是硬盘读写性能的测量值,如果其值有变动,有可能硬盘出现了问题。
    3 0x03 Spin-Up Time 盘片启动时间 盘片由静止启动加速到稳定正常运行速度的平均所需时间。
    4 0x04 Start/Stop Count 电机起停次计数 一个盘片启动关闭周期的统计值,只有硬盘从完全断电中启动或从睡眠模式恢复,盘片主轴电机被启动时才会记一次数。
    5 0x05 Reallocated Sector Count 重定位磁区计数 记录由于损坏而被映射到无损的后备区的扇区计数。当硬盘出现损坏扇区时,可以通过将其物理空间指向到特定的无损区域进行重映射修复,从而出现坏扇区的硬盘仍可使用。但当高过一定数值后,后扇区消耗殆尽而无法再重映射修复时,这些坏扇区就会显现出来且无法自行修复。除外由于要要求磁头读取这些坏扇区时专门再移动到后备区读写数据,对硬盘读写性能也有影响。
    6 0x06 Read Channel Margin 信道读取余量 读取数据时信道可用的余量,该属性没制定任何功用。
    7 0x07 Seek Error Rate 寻道错误率 (该属性是特定制造商才有的)磁头寻找磁道由于机械问题而出错几率,有多种原因可能引致出错,如:磁头伺服构件,盘体过热,或损坏。于不同厂商的不同计算方法而有所不同,其十进制值往往无意义的。
    8 0x08 Seek Time Performance 寻道性能 每次寻道时间的平均值,该值短期内迅速减少,有可能硬盘出现了问题。
    9 0x09 Power-On Hours 硬盘加电时间 硬盘自出厂以来加电启动的统计时间,单位为小时(或根据制造商设定为分钟或秒),一般用户以该值判定硬盘是否被使用过。
    10 0x0a Spin Retry Count 电机起转重试 S.M.A.R.T参数电机起转重试,表明了主轴电机的启动尝试次数。这个属性存储了关于主轴电机尝试加速到完全可操作速度的次数(在这种情况下,意味着主轴电机的第一次启动尝试没有成功)。主轴电机频繁的尝试启动,意味着硬盘驱动器的寿命可能将近实际限值。
    11 0x0b Recalibration Retries 磁头校准重试 磁头在一次运行失败时尝试校准至正常状态的统计数,该值改变时意味着硬盘的机械部件已经出现问题了。
    12 0x0c Power Cycle Count 设备开关计数 该属性表示硬盘电源充分开/关循环计数。
    13 0x0d Soft Read Error Rate 软件读取错误率 操作系统读取数据时的出错率。
    183 0xb7 SATA Downshift Error Count SATA降级运行计数 Western Digital 和 Samsung 特有属性,记录由于兼容问题导致降低SATA传输级别运行的计数。
    184 0xb8 End-to-End error 终端校验出错 HP专有S.M.A.R.T.(SMART IV)技术的一个特有属性,记录硬盘从盘片读取数据到高速缓存后再传输到主机时数据校验出错的次数。
    185 0xb9 Head Stability 磁头稳定性 Western Digital特有属性
    186 0xba Induced Op-Vibration Detection Western Digital特有属性
    187 0xbb Reported Uncorrectable Errors 报告不可纠正错误 硬件ECC无法恢复的错误计数。
    188 0xbc Command Timeout 通信超时 由于无法连接至硬盘而终止操作的统计数,一般为0,如果远超过0,则可能电源问题,数据线接口氧化或更严重的问题。
    189 0xbd High Fly Writes 磁头写入高度 硬盘进行写入时对磁头高度进行监控以提供额外的保障。当磁头处于不正常高度进行写入时,写入操作会被终止,原有数据重写入或者将该扇区重映射到安全区域。该属性是统计值。
    190 0xbe Airflow Temperature 气流温度 Western Digital特有属性,计量硬盘内气流温度,和检测项0xc2相似。
    191 0xbf G-sense Error Rate 加速度错误率 计量可能对硬盘做成损害的冲击次数。
    192 0xc0 Power-off Retract Count 电源关闭磁头收回计数 计量磁头在没有加电时不移进硬盘的值。
    193 0xc1 Load Cycle Count 磁头升降计数 计量磁头在加电时移进/移出硬盘周期的值。
    194 0xc2 Temperature 温度 计量硬盘的温度
    195 0xc3 Hardware ECC Recovered 硬件ECC恢复 (特定原始值)
    196 0xc4 Reallocation Event Count 重定位事件计数 记录已重映射扇区和可能重映射扇区的事件计数。
    197 0xc5 Current Pending Sector Count 等候重定的扇区计数 记录了不稳定的扇区的数量。
    198 0xc6 Uncorrectable Sector Count 无法校正的扇区计数 记录肯定出错的扇区数量。
    199 0xc7 UltraDMA CRC Error Count UltraDMA通讯CRC错误 记录硬盘通讯时发生的CRC错误。
    200 0xc8 Multi-Zone Error Rate 多区域错误率 写入一个区域时发现的错误的计数。
    200 0xc8 Write Error Rate 写入错误率 Fujitsu的特别属性,写入一个区域时发现的错误的计数。
    201 0xc9 Soft Read Error Rate 逻辑读取错误率 记录脱轨错误。
    202 0xca Data Address Mark errors 数据地址标记错误 记录数据地址标记错误(或制造商特定的计数)
    203 0xcb Run Out Cancel 用完取消 ECC错误计数
    204 0xcc Soft ECC Correction 逻辑ECC纠正 记录由软件ECC更正的错误计数。
    205 0xcd Thermal Asperity Rate 热嘈率 记录高温导致的出错记数。
    206 0xce Flying Height 飞行高度 记录磁头的飞行高度。飞得太低会增加磁头撞毁的机会,飞得太高增加读写错误的机会。
    207 0xcf Spin High Current 主轴电机浪涌电流计数 记录主轴电机运转时浪涌电流的次数。
    208 0xd0 Spin Buzz 记录由于电力不足而启动主轴电机的蜂鸣声次数。
    209 0xd1 Offline Seek Performance 离线寻址性能 在其内部测试硬盘的寻址能力表现。
    210 0xd2 (没定性,出现在Maxtor 6B200M0 200GB 和Maxtor 2R015H1 15GB 的硬盘中)
    211 0xd3 Vibration During Write 写操作震动 记录写入操作的震动数。
    212 0xd4 Shock During Write 写操作冲击 记录写入操作时的冲击数。
    220 0xdc Disk Shift 盘体偏移 记录盘体由于冲击或温度导致偏离主轴的相对距离。
    221 0xdd G-Sense Error Rate 加速计出错率 从外部诱发的冲击和振动产生的错误计数。
    222 0xde Loaded Hours 数据加载时间 数据读取时所花费的时间。(磁头移动时间)
    223 0xdf Load/Unload Retry Count 加载/卸载重试次数 磁头改变位置时所需时间。
    224 0xe0 Load Friction 负载摩擦 读写时由于机械摩擦做成的阻力。
    225 0xe1 Load/Unload Cycle Count 加载/卸载循环计数 总负载周期计数。
    226 0xe2 Load 'In'-time 磁头 磁头加载所需总时间(不包括在停泊区的花费)。
    227 0xe3 Torque Amplification Count 扭矩放大计数 尝试来补偿盘片的速度变化的计数。
    228 0xe4 Power-Off Retract Cycle 断电缩回周期 切断电源后电磁枢自动缩回的时间计数。
    230 0xe6 GMR Head Amplitude GMR磁头振幅 磁头振幅计数(磁头反复正反向运动距离)。
    231 0xe7 Temperature 硬盘温度 记录硬盘温度。
    232 0xe8 Endurance Remaining 耐久性剩余 磁盘可使用周期与设计可使用周期的百分比。
    232 0xe8 Available Reserved Space 可用保留空间 Intel固态硬盘报告的可提供的预留空间占作为一支全新的固态硬盘预留空间的百分比。
    233 0xe9 Power-On Hours 加电时间 处于开机状态的小时数。
    233 0xe9 Media Wearout Indicator 介质耗损指标 Intel固态硬盘报告的NAND刷写寿命,全新时值为100,最低值为1,其跌幅随NAND的擦除周期增加而在0到最大额定周期范围减少。
    240 0xf0 Head Flying Hours 磁头飞行时间 磁头处于定位中的时间。
    240 0xf0 Transfer Error Rate 传输错误率 在数据传输时连接被重置的次数计数。(Fujitsu特有属性)
    241 0xf1 Total LBAs Written LBA写入总数 LBA写入总数计数。
    242 0xf2 Total LBAs Read LBA读取总数 LBA读取总数计数,部分S.M.A.R.T.检测程序会把原始值显示为负数,这是因为该原始值为48位,而不是32位的。
    250 0xfa Read Error Retry Rate 读取错误重试率 从磁盘读取时的错误计数。
    254 0xfe Free Fall Protection 自由跌落保护 对“自由落体事件”检测计数。

    在非ATA平台上的实现

    SCSI

    硬盘的传输端口平台主要分为ATA和SCSI两个平台。作为一种硬盘的检测技术,理论上都能在两个平台上实现的,但由于两个平台也存在巨大的不同,S.M.A.R.T.在SCSI上的实现和在ATA的实现上也有所不同。首先,作为ATA上的专有规范,S.M.A.R.T.对ATA系统的干预要比SCSI更明显,S.M.A.R.T.对SCSI更多是起到检测的作用,即使在检测到磁盘有故障时,其只是报告监控端,要人为地处理故障。其次,由于SCSI平台的硬盘比ATA的更为复杂,所以其检测属性也比ATA的多和复杂准确,如包括对盘片和驱动电路版的温度检测(ATA多仅对盘片温度检测),对电压的检测等。

    USB

    在USB标准中,USB不能用于计算机内部储存设备的基本总线(如ATA,SCSI等),其本身没有为S.M.A.R.T.提供传输数据的途径。在使用ATA硬盘,以USB为传输端口的移动硬盘中,即使硬盘内S.M.A.R.T.仍然运作,但没办法直接向系统提供S.M.A.R.T.的数据。现在新的移动硬盘的内部驱动转换电路已经能以一些方法将硬盘内S.M.A.R.T.的数据通过USB传输到系统或监控程序中读取。

    SMART原始格式

    参考链接: http://blog.csdn.net/u014183302/article/details/41289451

    命名空间root/wmi下MSStorageDriver_ATAPISmartData类的子集VendorSpecific内存放了硬盘内部芯片存储的所有SMART讯息大小为512Bytes。

    第1,2个Byte位置代表SMART版本号(如图为10,0)。第3Byte开始往后全部为SMART attributes,每12个Bytes为一组代表一个分类Item。

    VendorSpecific={10,0,
    
    1,15,0,118,99,80,162,5,11,0,0,0,
    
    3,3,0,100,97,0,0,0,0,0,0,0,
    
    4,50,0,99,99,227,4,0,0,0,0,0,
    
    5,51,0,100,100,0,0,0,0,0,0,0,
    
    7,15,0,63,60,112,157,30,0,0,0,0,
    
    9,50,0,77,77,145,81,0,0,0,0,0,
    
    10,19,0,100,100,0,0,0,0,0,0,0,
    
    12,50,0,100,100,176,1,0,0,0,0,0,
    
    183,50,0,100,100,0,0,0,0,0,0,0,
    
    184,50,0,100,100,0,0,0,0,0,0,0,
    
    187,50,0,100,100,0,0,0,0,0,0,0,
    
    188,50,0,100,97,7,0,0,0,0,0,0,
    
    189,58,0,100,100,0,0,0,0,0,0,0,
    
    190,34,0,56,51,44,0,31,45,0,0,0,
    
    194,34,0,44,49,44,0,0,0,15,0,0,
    
    195,26,0,48,27,80,162,5,11,0,0,0,
    
    197,18,0,100,100,0,0,0,0,0,0,0,
    
    198,16,0,100,100,0,0,0,0,0,0,0,
    
    199,62,0,200,200,0,0,0,0,0,0,0,
    
    240,0,0,100,253,195,7,0,0,255,11,54,
    
    241,0,0,100,253,118,152,49,22,0,0,0,
    
    242,0,0,100,253,167,27,180,69,0,0,0,0,
    
    0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
    

    每一组前面5个数对应

    5,51,0,100,100,0,0,0,0,0,0,0,
    197,18,0,100,100,0,0,0,0,0,0,0,
    属性ID,当前,最差,阀值,数据
    

    这些值和HD Tune工具检测出来的结果一致

    WMI查询工具

    WMIExplorer.exe

    下载连接: http://wmie.codeplex.com/

    相关文章

      网友评论

          本文标题:理解S.M.A.R.T.格式及从中获取硬盘状态信息

          本文链接:https://www.haomeiwen.com/subject/svvrlctx.html