当前待定扇区和离线不可纠正增加然后减少到零的原因

Ram*_*man 15 smart seagate

在一周的过程中,对于 3TB 希捷硬盘 (ST3000DM001-1CH166),smartd 报告了离线不可纠正和当前不可读(待处理)扇区的数量缓慢增加,然后减少的数量,直到最终计数为 0 并且出现错误情况重启。从日志(仅显示更改):

Jul  6 18:04:57 x smartd[462]: Device: /dev/sdb [SAT], 8 Currently unreadable (pending) sectors
Jul  6 18:04:58 x smartd[462]: Device: /dev/sdb [SAT], 8 Offline uncorrectable sectors
[...]
Jul  7 16:34:58 x smartd[462]: Device: /dev/sdb [SAT], 16 Currently unreadable (pending) sectors (changed +8)
Jul  7 16:34:58 x smartd[462]: Device: /dev/sdb [SAT], 16 Offline uncorrectable sectors (changed +8)
[...]
Jul 11 14:04:57 x smartd[462]: Device: /dev/sdb [SAT], 24 Currently unreadable (pending) sectors (changed +8)
Jul 11 14:04:57 x smartd[462]: Device: /dev/sdb [SAT], 24 Offline uncorrectable sectors (changed +8)
Jul 11 14:34:57 x smartd[462]: Device: /dev/sdb [SAT], 32 Currently unreadable (pending) sectors (changed +8)
Jul 11 14:34:58 x smartd[462]: Device: /dev/sdb [SAT], 32 Offline uncorrectable sectors (changed +8)
[...]
Jul 13 09:04:57 x smartd[462]: Device: /dev/sdb [SAT], 24 Currently unreadable (pending) sectors (changed -8)
Jul 13 09:04:57 x smartd[462]: Device: /dev/sdb [SAT], 24 Offline uncorrectable sectors (changed -8)
Jul 13 09:34:58 x smartd[462]: Device: /dev/sdb [SAT], 16 Currently unreadable (pending) sectors (changed -8)
Jul 13 09:34:58 x smartd[462]: Device: /dev/sdb [SAT], 16 Offline uncorrectable sectors (changed -8)
Jul 13 10:04:57 x smartd[462]: Device: /dev/sdb [SAT], 16 Currently unreadable (pending) sectors
Jul 13 10:04:57 x smartd[462]: Device: /dev/sdb [SAT], 16 Offline uncorrectable sectors
Jul 13 10:34:57 x smartd[462]: Device: /dev/sdb [SAT], No more Currently unreadable (pending) sectors, warning condition reset after 1 email
Jul 13 10:34:57 x smartd[462]: Device: /dev/sdb [SAT], No more Offline uncorrectable sectors, warning condition reset after 1 email
Run Code Online (Sandbox Code Playgroud)

此外,重新分配的扇区数也是 0,因此扇区似乎没有被重新映射。这是smartctl -a驱动器的完整(当前)输出:

smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.14.4-100.fc19.x86_64] (local build)
Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Barracuda 7200.14 (AF)
Device Model:     ST3000DM001-1CH166
Serial Number:    W1F30FK2
LU WWN Device Id: 5 000c50 06129a9a8
Firmware Version: CC27
User Capacity:    3,000,592,982,016 bytes [3.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    7200 rpm
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-2, ACS-3 T13/2161-D revision 3b
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 3.0 Gb/s)
Local Time is:    Wed Jul 16 11:23:08 2014 EDT

==> WARNING: A firmware update for this drive may be available,
see the following Seagate web pages:
http://knowledge.seagate.com/articles/en_US/FAQ/207931en
http://knowledge.seagate.com/articles/en_US/FAQ/223651en

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

General SMART Values:
Offline data collection status:  (0x00) Offline data collection activity
                    was never started.
                    Auto Offline Data Collection: Disabled.
Self-test execution status:      (   0) The previous self-test routine completed
                    without error or no self-test has ever 
                    been run.
Total time to complete Offline 
data collection:        (  584) seconds.
Offline data collection
capabilities:            (0x73) SMART execute Offline immediate.
                    Auto Offline data collection on/off support.
                    Suspend Offline collection upon new
                    command.
                    No Offline surface scan supported.
                    Self-test supported.
                    Conveyance Self-test supported.
                    Selective Self-test supported.
SMART capabilities:            (0x0003) Saves SMART data before entering
                    power-saving mode.
                    Supports SMART auto save timer.
Error logging capability:        (0x01) Error logging supported.
                    General Purpose Logging supported.
Short self-test routine 
recommended polling time:    (   1) minutes.
Extended self-test routine
recommended polling time:    ( 347) minutes.
Conveyance self-test routine
recommended polling time:    (   2) minutes.
SCT capabilities:          (0x3085) SCT Status supported.

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   115   099   006    Pre-fail  Always       -       91131424
  3 Spin_Up_Time            0x0003   094   094   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   100   100   020    Old_age   Always       -       12
  5 Reallocated_Sector_Ct   0x0033   100   100   010    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000f   078   060   030    Pre-fail  Always       -       59138260
  9 Power_On_Hours          0x0032   094   094   000    Old_age   Always       -       5888
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   100   100   020    Old_age   Always       -       12
183 Runtime_Bad_Block       0x0032   100   100   000    Old_age   Always       -       0
184 End-to-End_Error        0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0 0 0
189 High_Fly_Writes         0x003a   097   097   000    Old_age   Always       -       3
190 Airflow_Temperature_Cel 0x0022   053   049   045    Old_age   Always       -       47 (Min/Max 23/51)
191 G-Sense_Error_Rate      0x0032   100   100   000    Old_age   Always       -       0
192 Power-Off_Retract_Count 0x0032   100   100   000    Old_age   Always       -       10
193 Load_Cycle_Count        0x0032   096   096   000    Old_age   Always       -       8086
194 Temperature_Celsius     0x0022   047   051   000    Old_age   Always       -       47 (0 22 0 0 0)
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
240 Head_Flying_Hours       0x0000   100   253   000    Old_age   Offline      -       5703h+56m+25.808s
241 Total_LBAs_Written      0x0000   100   253   000    Old_age   Offline      -       11838196191
242 Total_LBAs_Read         0x0000   100   253   000    Old_age   Offline      -       211237637103

SMART Error Log Version: 1
No Errors Logged

SMART Self-test log structure revision number 1
No self-tests have been logged.  [To run self-tests, use: smartctl -t]


SMART Selective self-test log data structure revision number 1
 SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing
Selective self-test flags (0x0):
  After scanning selected spans, do NOT read-scan remainder of disk.
If Selective self-test is pending on power-up, resume after 0 minute delay.
Run Code Online (Sandbox Code Playgroud)

我已下载但尚未在驱动器上运行 Seatools,但驱动器当前的 SMART 状态基本上看起来不错。什么会导致这种行为?

更新:对于未来的读者,驱动器实际上还可以再使用几个月,此时更多扇区变得无法纠正/脱机,重新分配的扇区数量开始增加到 0 以上,并且 SMART 长自检开始因读取而失败错误。因此,这些消息似乎是一个有用的预警。

Bar*_*ven 12

Current Pending Sector 就是磁盘知道需要重新分配但尚未重新分配的位置数量,因为磁盘没有要重新分配的数据源。一旦您写入该位置,磁盘将自动将该区域重新分配到另一个位置并将新数据写入新位置,当前挂起的扇区数将减少。

这一切都很好,磁盘应该如何运行。

您可以在 Linux 上使用diskscan或在 Windows上使用HD Tune来扫描磁盘中的坏位置,还可以通过让软件写入这些位置来尝试“修复”这些位置,以便立即尝试重新分配。

  • 可能磁盘有一个不可读的扇区,所以有一个挂起的扇区,当在该位置写入时,磁盘可以测试该位置并看到写入通过,因此取消了重新分配,这解释了计数器归零,但没有添加重新分配。 (2认同)

小智 10

我最近用类似的希捷 ST3000DM001-1CH166 固件 CC24 遇到过这种情况。你不需要 Seatools,只需运行一个长时间的智能测试:

smartctl -t long /dev/sdc
Run Code Online (Sandbox Code Playgroud)

然后,如果 smarctl 没有显示错误,您现在就可以了:

SMART Self-test log structure revision number 1
Num  Test_Description    Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed without error       00%      9912         -
Run Code Online (Sandbox Code Playgroud)

如果失败,则直接发送回希捷。他们在大约一周内更换了我最后一次失败的一次。

  • 更新:几个月后,驱动器自检失败,重新分配的扇区正在增加。我要退回驱动器以进行保修更换。 (5认同)
  • 该死的那些磁盘!他们似乎有 40% 的失败率。 (4认同)