几个星期以来,smartd 一直报告说它在周末跳过了一些预定的自我检测:
4 月 24 日 18:29:32 calvin smartd[4758]: 设备:/dev/sda,跳过预定的离线立即测试;当前自检剩余 40%。 4 月 24 日 18:29:33 calvin smartd[4758]: 设备:/dev/sdb,跳过预定的离线立即测试;当前自检剩余 50%。
此 RAID-1 阵列中的驱动器设置为每天运行四次离线测试、每天凌晨 2 点进行一次简短自检以及每周六凌晨 2 点进行一次长时间自检。出于某种原因,长时间自检似乎耗时更长,导致其他预定的测试被跳过。
第一个问题:这是驱动器可能出现故障的征兆吗?
然后今天,smartd 报告自检失败。以下是输出smartctl -a /dev/sdb
:
smartctl 版本 5.38 [i686-pc-linux-gnu] 版权所有 (C) 2002-8 Bruce Allen 主页是 http://smartmontools.sourceforge.net/ === 信息部分开始 === 型号系列:Seagate Barracuda 7200.8 系列 设备型号:ST3250823AS 序列号:3ND1GNBC 固件版本:3.03 用户容量:250,059,350,016字节 设备位于:在 smartctl 数据库中 [有关详细信息,请使用:-P show] ATA 版本为:7 ATA 标准为:未指明确切的 ATA 规范草案版本 当地时间是: 2010 年 4 月 25 日 星期日 13:15:34 EDT SMART 支持:可用 - 设备具有 SMART 功能。 SMART 支持:已启用 === 开始读取智能数据部分 === SMART 整体健康自我评估测试结果:通过 一般 SMART 值: 离线数据收集状态:(0x82)离线数据收集活动 已顺利完成。 自动离线数据收集:已启用。 自检执行状态:(0)上一次自检程序已完成 没有错误或没有自检过 已运行。 完成离线的总时间 数据收集:(430)秒。 离线数据收集 功能:(0x5b)SMART 立即执行离线。 支持自动离线数据收集开启/关闭。 暂停离线收集新 命令。 支持离线表面扫描。 支持自我测试。 不支持传输自检。 支持选择性自我测试。 SMART 功能:(0x0003)输入前保存 SMART 数据 省电模式。 支持 SMART 自动保存定时器。 错误日志记录功能:(0x01)支持错误日志记录。 支持通用日志记录。 简短的自检程序 建议投票时间:(1)分钟。 扩展自检程序 建议投票时间:(84)分钟。 SMART 属性数据结构修订号:10 供应商特定的 SMART 属性及阈值: ID# ATTRIBUTE_NAME 标志值 最差阈值类型 已更新 WHEN_FAILED RAW_VALUE 1 Raw_Read_Error_Rate 0x000f 047 039 006 始终预失败 - 168450357 3 Spin_Up_Time 0x0003 098 098 000 始终预故障 - 0 4 Start_Stop_Count 0x0032 100 100 020 Old_age 始终 - 33 5 Reallocated_Sector_Ct 0x0033 100 100 036 预故障始终 - 9 7 Seek_Error_Rate 0x000f 087 060 030 始终预失败 - 654745480 9 通电时间 0x0032 055 055 000 老化时间 始终 - 40141 10 Spin_Retry_Count 0x0013 100 100 097 预失败始终 - 0 12 Power_Cycle_Count 0x0032 100 100 020 Old_age 始终 - 51 194 温度_摄氏度 0x0022 037 062 000 Old_age 始终 - 37 (0 17 0 0) 195 Hardware_ECC_Recovered 0x001a 047 039 000 Old_age 始终 - 168450357 197 Current_Pending_Sector 0x0012 100 100 000 Old_age 始终 - 0 198 Offline_Uncorrectable 0x0010 100 100 000 Old_age 离线 - 0 199 UDMA_CRC_Error_Count 0x003e 200 200 000 Old_age 始终 - 0 200 Multi_Zone_Error_Rate 0x0000 100 253 000 Old_age 离线 - 0 202 TA_Increase_Count 0x0032 100 253 000 Old_age 始终 - 0 SMART 错误日志版本:1 未记录任何错误 SMART 自检日志结构修订号 1 编号 测试描述 状态 剩余寿命(小时) LBA_of_first_error # 1 短暂离线 无错误完成 00% 40131 - #2 扩展离线完成:读取失败 30% 40129 379795511 # 3 短暂离线 无错误完成 00% 40084 - # 4 短暂离线 无错误完成 00% 40060 - # 5 短暂离线 无错误完成 00% 40036 - # 6 短暂离线 无错误完成 00% 40013 - # 7 短暂离线 无错误完成 00% 39990 - #8 扩展离线 无错误完成 00% 39977 - # 9 短暂离线 无错误完成 00% 39919 - #10 短暂离线 无错误完成 00% 39895 - #11 短暂离线 无错误完成 00% 39872 - #12 短暂离线 无错误完成 00% 39848 - #13 短暂离线 无错误完成 00% 39824 - #14 短暂离线 无错误完成 00% 39801 - #15 扩展离线 无错误完成 00% 39789 - #16 短暂离线 无错误完成 00% 39754 - #17 短暂离线 无错误完成 00% 39732 - #18 短暂离线 无错误完成 00% 39707 - #19 短暂离线 无错误完成 00% 39683 - #20 短暂离线 无错误完成 00% 39660 - #21 短暂离线 无错误完成 00% 39636 - SMART 选择性自检日志数据结构修订号 1 跨度 最小 LBA 最大 LBA 当前测试状态 1 0 0 未测试 2 0 0 未测试 3 0 0 未测试 4 0 0 未测试 5 0 0 未测试 选择性自检标志(0x0): 扫描选定的范围后,请勿读取扫描磁盘的剩余部分。 如果开机时选择性自检正在等待,则在 0 分钟延迟后恢复。
考虑到这个驱动器已经使用了大约 4.5 年,我继续使用它可能是在冒险。
SMART 似乎并未被看作是预测硬盘故障的可靠方法。我还能使用什么来尽早发现硬盘故障?
答案1
一些 SMART 参数(例如重新分配计数)往往可以很好地指示未来的磁盘故障,而其他参数则没那么有用。除非您拥有 HD 制作者使用的调试工具,否则 SMART 仍然是获取有关磁盘的低级可靠性信息的最佳方式。
如果你对硬盘故障更感兴趣,我建议你看一下民意调查谷歌的一个团队进行了研究,他们还讨论了 SMART 监控的性能以及高清可靠性的其他重要因素。