为什么不同的制造商具有不同的SMART价值?


23

首先,我想每个人都知道硬盘驱动器的故障要比制造商想要承认的多得多。Google进行了一项研究,该研究表明硬盘驱动器的SMART状态报告的某些原始数据属性可能与驱动器的未来故障密切相关。

例如,我们发现在发生首次扫描错误后,驱动器在60天内发生故障的可能性是没有错误的驱动器的39倍。重新分配,离线重新分配和概率计数中的第一个错误也与更高的故障概率密切相关。尽管存在这些强相关性,但我们发现仅基于SMART参数的故障预测模型的预测准确性可能会受到严重限制,因为我们的故障驱动器中有很大一部分都没有显示SMART错误信号。

希捷(Seagate)似乎在试图掩盖有关其驱动器的信息,声称只有其软件才能准确确定其驱动器的准确状态,并且它们的软件不会告诉您SMART属性的原始数据值。据我所知,Western Digital并未做出任何此类声明,但其状态报告工具似乎也未报告原始数据值。

我一直在使用smartmontools的HDtune和smartctl来收集每个属性的原始数据值。我发现确实如此……当涉及某些属性时,我正在将苹果与橙子进行比较。例如,我发现大多数Seagate硬盘都会报告它们有数百万个读取错误,而西方数字99%的时间显示0表示读取错误。我还发现,希捷将报告数百万个搜索错误,而Western Digital似乎始终报告0。

:如何标准化这些数据?希捷是否会产生数百万个错误,而西方数字公司却不产生任何错误?Wikipedia关于SMART状态的文章说,制造商有不同的方法来报告此数据。

这是我的假设:

我想我找到了一种规范化数据的方法(对吗?)。

希捷驱动器具有西部数据驱动器没有的其他属性(已恢复硬件ECC)。当您从ECC恢复的计数中减去读取错误计数时,您可能最终会得到0。这似乎等同于Western Digitals报告的“读取错误”计数。这意味着Western Digital仅报告无法纠正的读取错误,而Seagate会计算所有读取错误,并告诉您能够修复的错误数量。

我有一个Seagate驱动器,其中“读取”错误计数小于“已恢复ECC”计数,并且我注意到许多文件已损坏。这就是我提出假设的方式。希捷产生的数百万个搜索错误对我来说仍然是一个谜。

如果您有其他信息,请确认或纠正我的假设。

这是我的西方数字驱动器的智能状态,以便您可以了解我在说什么:

james@ubuntu:~$ sudo smartctl -a /dev/sda
smartctl version 5.38 [x86_64-unknown-linux-gnu] Copyright (C) 2002-8 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF INFORMATION SECTION ===
Device Model:     WDC WD1001FALS-00E3A0
Serial Number:    WD-WCATR0258512
Firmware Version: 05.01D05
User Capacity:    1,000,204,886,016 bytes
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   8
ATA Standard is:  Exact ATA specification draft version not indicated
Local Time is:    Thu Jun 10 19:52:28 2010 PDT
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

SMART Attributes Data Structure revision number: 16
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0
  3 Spin_Up_Time            0x0027   179   175   021    Pre-fail  Always       -       4033
  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       270
  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x002e   200   200   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   098   098   000    Old_age   Always       -       1468
 10 Spin_Retry_Count        0x0032   100   100   000    Old_age   Always       -       0
 11 Calibration_Retry_Count 0x0032   100   100   000    Old_age   Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       262
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       46
193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       223
194 Temperature_Celsius     0x0022   105   102   000    Old_age   Always       -       42
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0

编辑:这是我正在谈论的Seagate驱动器,它导致数据损坏。此数据来自HDTune。

HD Tune: ST3250623A Health

ID                               Current  Worst    ThresholdData       Status   
(01) Raw Read Error Rate         45       38       6        77882492   Ok       
(03) Spin Up Time                99       98       0        0          Ok       
(04) Start/Stop Count            100      100      20       640        Ok       
(05) Reallocated Sector Count    100      100      36       0          Ok       
(07) Seek Error Rate             85       60       30       359872048  Ok       
(09) Power On Hours Count        94       94       0        6028       Ok       
(0A) Spin Retry Count            100      100      97       0          Ok       
(0C) Power Cycle Count           100      100      20       689        Ok       
(C2) Temperature                 25       55       0        25         Ok       
(C3) Hardware ECC Recovered      50       47       0        201555081  Ok       
(C5) Current Pending Sector      100      100      0        0          Ok       
(C6) Offline Uncorrectable       100      100      0        0          Ok       
(C7) Ultra DMA CRC Error Count   200      199      0        1          Ok       
(C8) Write Error Rate            100      253      0        0          Ok       
(CA) TA Counter Increased        100      253      0        0          Ok       

Power On Time         : 6028
Health Status         : Ok

在我看来,恢复的硬件ECC大于原始读取错误率的事实是与直觉相反的。

这是我发现的“普通”希捷驱动器,其中已恢复的ECC与原始读取错误率匹配:

HD Tune: ST380011A Health

ID                               Current  Worst    ThresholdData       Status   
(01) Raw Read Error Rate         62       46       6        79986164   Ok       
(03) Spin Up Time                98       98       0        0          Ok       
(04) Start/Stop Count            100      100      20       6          Ok       
(05) Reallocated Sector Count    100      100      36       0          Ok       
(07) Seek Error Rate             83       60       30       210309663  Ok       
(09) Power On Hours Count        93       93       0        6516       Ok       
(0A) Spin Retry Count            100      100      97       0          Ok       
(0C) Power Cycle Count           99       99       20       1325       Ok       
(C2) Temperature                 25       52       0        25         Ok       
(C3) Hardware ECC Recovered      62       46       0        79986164   Ok       
(C5) Current Pending Sector      100      100      0        0          Ok       
(C6) Offline Uncorrectable       100      100      0        0          Ok       
(C7) Ultra DMA CRC Error Count   200      188      0        18         Ok       
(C8) Write Error Rate            100      253      0        0          Ok       
(CA) TA Counter Increased        100      253      0        0          Ok       

Power On Time         : 6516
Health Status         : Ok

编辑:

我想澄清一下,我知道Google通常认为SMART无用。我知道每个人都应该备份他们的数据。但是,我从事修理其他人的计算机的业务。大多数人没有备份或RAID。公司对硬盘驱动器进行故障排除并不划算,因此他们只是在RAID上运行它们直到死掉。我发现在工作中检查硬盘驱动器的SMART状态很有用。大约需要30秒。如果我很幸运能使坏的驱动器显示出诸如扫描错误或重新分配的扇区之类的故障提示,那么我知道可以使该驱动器脱离困境。如果没有这样的提示,我可能会花很多时间来排查速度慢和数据损坏的问题,直到我最终发现硬盘坏了。

我只是想微调此过程。


(我相信)磁盘管理下的管理菜单中有基于智能的信息。它可能比smartctl具有更多功能,但是我有一段时间没有使用它了,也没有将它放在我面前。
Jarvin 2010年

@Dan嗨,Dan,我不确定您在说什么Windows工具。你能澄清一下吗?
James T

SMART的问题在于它有点用词不当。它没有实际的智能,只有几个方程式(可能甚至没有启发式)。它所能做的就是监控自身并报告数字,仅此而已。例如,我的驱动器的电源线连接不良,导致其快速打开和关闭多次(发出“喀click”声)。我重新固定了连接器,因此它现在可以正常运行,但是由于一次(可修复)暂时(可修复)故障,它现在已在SMART中永久记录了RRER事件,从而使其看起来好像在发生故障。
Synetech 2012年

Answers:


14

似乎确实有不同的制造商将SMART值用于有时根本不同的事情,如您在此处看到的:

我的ReadyNAS硬盘报告SMART原始读取错误率,搜索错误率和硬件ECC恢复高。我该怎么办?

Seagate使用这些SMART字段进行内部计数,因此这是Seagate磁盘的已知问题。在其他字段中查找异常计数,尤其是重新分配的扇区Ct和ATA错误计数。

因此,当涉及到您的实际问题时...

如果我很幸运能使坏的驱动器显示出诸如扫描错误或重新分配的扇区之类的故障提示,那么我知道可以使该驱动器脱离困境。如果没有这样的提示,我可能会花很多时间来排查速度慢和数据损坏的问题,直到我最终发现硬盘坏了。

我想说一个好的经验法则是,您只能期望SMART设置在相同的驱动器制造商,甚至是相同的驱动器型号中是可比的!

因此,当您要诊断那些SMART计数时,请记住...一个制造商的“读取错误重试计数”可能意味着与另一制造商的完全不同。悲伤但真实。:(


14

好吧,首先我不同意你的前提。

Google进行了一项研究,该研究表明,硬盘驱动器的SMART状态报告的某些原始数据属性可能与硬盘驱动器的未来故障密切相关。

实际上,他们发现了相反的情况:

...我们发现,仅基于SMART参数的故障预测模型的预测准确性可能会受到严重限制,因为我们大部分故障驱动器均未显示任何SMART错误信号。

其次,SMART阈值标准化。驱动器本身的固件会将属性标记为“故障前”,但原始值对用户毫无意义。例如,希捷说

针对某些阈值限制,正在监视和测量各种属性。如果任何一个属性超过阈值,则常规SMART状态测试将从“通过”更改为“失败”。

第三方SMART软件可能读取的SMART值并非基于在Seagate硬盘驱动器中如何使用这些值。Seagate不支持声称读取单个SMART属性和阈值的软件程序。旧驱动器可能有一定的历史正确性,但是毫无疑问,新驱动器将包含更新的解决方案,属性和阈值。

tl; dr摘要:

原始SMART值几乎毫无意义,因为不同的制造商以不同的方式使用它们,并且具有不同的阈值等。驱动器固件本身会告诉您何时处于“故障前”状态……或者可能不是,SMART确实不是非常可靠。

定期备份!


根据您的评论,似乎您没有阅读我的整个帖子。这就是为什么我要输入所有背景信息和引号。您引用了Google,但只引用了其中一部分。如果您在引用之前阅读了该部分...,它表示某些属性具有很强的故障相关性...。例如重新分配的扇区数。在一个扇区重新分配之后,制造商不会报告其驱动器​​处于故障前状态。这清楚地表明,通过查看原始数据,您可以更好地指示驱动器的运行状况。
James T

我还要补充一点,就是希捷硬盘损坏了我的数据,并且原始数据值与我学会的正常硬盘明显不同。显然,制造商设置阈值存在问题。
James T

我认为您需要重新阅读我的帖子和链接。原始SMART值不是任何东西的可靠指标。Google的报告没有说“某些属性具有很强的故障关联性”。它所做的说的是,尽管事实“后,他们的第一个扫描错误,驱动器是39倍更有可能在60天内不及格,没有这样的错误驱动器”,发生故障的硬盘人口不到15%有任何扫描错误。如果15%的时间正确,这是否是一个可靠的指标?
sml 2010年

1
@scottl我不确定您从何处获得15%的收入。我在文章中没有看到。即使只有15%的驱动器出现扫描错误...他们发现,存在扫描错误的驱动器在60天内发生故障的可能性也要高39倍。这并不意味着除非出现扫描错误,否则驱动器不会失败。这仅表示如果您确实存在扫描错误,则硬盘驱动器的剩余寿命可能会很短。您是否进行过统计?我发现它非常有用。
詹姆斯·T

1
smartmontools常见问题解答说:原始SMART属性(温度,开机寿命等)存储在特定于供应商的结构中。有时候这些很奇怪。日立磁盘(至少其中一些磁盘)以分钟而不是数小时的形式存储开机寿命(请参见下面的下一个问题)。IBM磁盘(至少其中一些磁盘)在原始结构中存储了三个温度,而不仅仅是一个。等等。
sml 2010年

4

我不确定您要问的问题是什么。您似乎将整个问题和答案汇总为一个,但是...

您是否将硬盘驱动器指标与 已将 SeaTools

它是Seagate的标准硬件诊断工具,而AFAIK是最常用的HDD诊断工具。

如果您发现这些工具报告了有关其竞争对手的不利结果,请不要感到惊讶。这些工具通常可与所有制造商的HDD一起使用,但这并不意味着他们在制造过程中使竞争对手看起来不错。

您是否从未听过这个玩笑,“所有统计数据中有99.99%是正确的,当然,此统计数据除外”。


1
是的...有点令人困惑。我基本上将所有我熟悉的背景信息放在问题之前,并在问题之后进行所有测试和猜想。这是我的问题“如何规范化此数据?”。基本上..如何使一个制造商的所有数据属性与另一制造商的数据属性具有相同的含义,所以我可以准确地进行比较。
詹姆斯·T

@James您可以尝试从尽可能多的差异中收集数据,并弄清楚如果以不同的方式解释数据时每个数据如何呈现。他们可能都在报告正确的数据,他们可能只是以您指出的不同方式来解释它。这就是为什么我添加统计信息引用的原因……仅仅是因为数据很好,并不意味着解释正确。
Evan Plaice 2010年

2
是的,这就是我所做的。我已经检查了70多个不同的硬盘驱动器,查找错误和读取错误的巨大差异是我无法理解的属性。我猜想对于希捷硬盘来说,读取错误与恢复的硬件ecc有某种关系。我不确定那是什么关系。我希望这里有人可以告诉我。我还希望有人能告诉我,为什么希捷硬盘具有巨大的寻道错误计数,而西方数字似乎总是为零。
James T

@James也许有人会给出更好的答案……我的老实猜测是,Western Digital可能未遵循确切的SMART规范。这就是硬件标准的问题,它们是不错的卖点,但是总有一些制造商会在不遵循完整规范的情况下推销所有受益者。
Evan Plaice 2010年

是的,偏离标准是我想出的,也是维基百科文章所建议的。我想知道它们之间的区别,以便我可以正确比较这两家制造商(可能还有其他制造商)。感谢您的评论埃文。希望这也为其他人澄清了这个问题。
詹姆斯·T

2

在硬盘驱动器内部组件的物理现实中,所有品牌的大于100MB的硬盘驱动器都会有很多物理读取错误。其中大多数已通过ECC安全地纠正,一些(希望很少)被ECC错误纠正,其余(很少但比错误更正的错误)作为读取失败报告回计算机,并且还应使驱动器自动重新定位驱动器。坏扇区。

除了纠正原始读取错误外,ECC还纠正硬件认为还可以的读取,但返回的位略有错误。因此,更正的ECC可能是“原始读取失败,但已由ECC修复+原始读取成功,但错误并已由ECC修复”。

因此,对数据的两种解释似乎是可能的:

A.非Seagate驱动器在“原始读取错误计数”中不包括ECC校正的读取错误,仅包括不可修复的错误。

B.如果ECC发现数据有问题,即使低电平电路没有注意到,其他人也没有注意到,Seagate认为这是读取错误。

归一化取决于哪种理论(A或B)是正确的。


>还应使驱动器自动重新定位坏扇区。那么,“ 不可纠正扇区数重 定位事件计数”和“ 当前待处理扇区数”字段之间的关系是什么?它不会增加电流,然后重新定位还是无法校正?为什么它无法纠正?如果它尝试重新映射坏扇区却失败了(即备用扇区坏了),那么它是否不应该尝试重新映射到其他备用扇区?它不是只有一个备用轮胎。
Synetech 2011年

100 MB?您是说100 GB吗?
彼得·莫滕森
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.