我正在运行真NAS服务器基于FreeBSD 12.2。我将存储迁移到10 TB WD Red Pro。他们已经跑了42天了。
突然间,在 ZFS 清理期间,其中一个磁盘出现 5 个错误。所有错误大致如下:
(ada2:ahcich14:0:0:0): READ_FPDMA_QUEUED. ACB: 60 b8 08 3a 0f 40 f8 01 00 07 00 00
(ada2:ahcich14:0:0:0): CAM status: ATA Status Error
(ada2:ahcich14:0:0:0): ATA status: 41 (DRDY ERR), error: 40 (UNC )
(ada2:ahcich14:0:0:0): RES: 41 40 90 3b 0f 40 f8 01 00 30 06
(ada2:ahcich14:0:0:0): Retrying command, 3 more tries remain
我跑了一个扩展 SMART 测试事件发生后,但它没有产生任何错误(除了记录的错误),特别是没有重新定位的扇区或类似的东西:
smartctl 7.1 2019-12-30 r5022 [FreeBSD 12.2-RELEASE-p2 amd64] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Device Model: WDC WD102KFBX-68M95N0
Serial Number: [deleted]
LU WWN Device Id: 5 000cca 0b0cd3041
Firmware Version: 83.00A83
User Capacity: 10,000,831,348,736 bytes [10.0 TB]
Sector Sizes: 512 bytes logical, 4096 bytes physical
Rotation Rate: 7200 rpm
Form Factor: 3.5 inches
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: ACS-2, ATA8-ACS T13/1699-D revision 4
SATA Version is: SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is: [deleted]
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: (0x82) Offline data collection activity
was completed without error.
Auto Offline Data Collection: Enabled.
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: ( 87) seconds.
Offline data collection
capabilities: (0x5b) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
Offline surface scan supported.
Self-test supported.
No 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: ( 2) minutes.
Extended self-test routine
recommended polling time: (1108) minutes.
SCT capabilities: (0x003d) SCT Status supported.
SCT Error Recovery Control supported.
SCT Feature Control supported.
SCT Data Table supported.
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 0x000b 100 100 016 Pre-fail Always - 0
2 Throughput_Performance 0x0004 132 132 054 Old_age Offline - 96
3 Spin_Up_Time 0x0007 100 100 024 Pre-fail Always - 0
4 Start_Stop_Count 0x0012 100 100 000 Old_age Always - 3
5 Reallocated_Sector_Ct 0x0033 100 100 005 Pre-fail Always - 0
7 Seek_Error_Rate 0x000a 100 100 067 Old_age Always - 0
8 Seek_Time_Performance 0x0004 128 128 020 Old_age Offline - 18
9 Power_On_Hours 0x0012 100 100 000 Old_age Always - 1077
10 Spin_Retry_Count 0x0012 100 100 060 Old_age Always - 0
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 3
192 Power-Off_Retract_Count 0x0032 100 100 000 Old_age Always - 215
193 Load_Cycle_Count 0x0012 100 100 000 Old_age Always - 215
194 Temperature_Celsius 0x0002 142 142 000 Old_age Always - 42 (Min/Max 25/67)
196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0
197 Current_Pending_Sector 0x0022 100 100 000 Old_age Always - 0
198 Offline_Uncorrectable 0x0008 100 100 000 Old_age Offline - 0
199 UDMA_CRC_Error_Count 0x000a 200 200 000 Old_age Always - 0
SMART Error Log Version: 1
ATA Error Count: 5
CR = Command Register [HEX]
FR = Features Register [HEX]
SC = Sector Count Register [HEX]
SN = Sector Number Register [HEX]
CL = Cylinder Low Register [HEX]
CH = Cylinder High Register [HEX]
DH = Device/Head Register [HEX]
DC = Device Command Register [HEX]
ER = Error register [HEX]
ST = Status register [HEX]
Powered_Up_Time is measured from power on, and printed as
DDd+hh:mm:SS.sss where DD=days, hh=hours, mm=minutes,
SS=sec, and sss=millisec. It "wraps" after 49.710 days.
Error 5 occurred at disk power-on lifetime: 1050 hours (43 days + 18 hours)
When the command that caused the error occurred, the device was active or idle.
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
40 41 00 00 00 00 00 Error: UNC at LBA = 0x00000000 = 0
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
60 b8 10 08 3a 0f 40 08 15d+21:45:25.729 READ FPDMA QUEUED
60 80 38 b8 60 0f 40 08 15d+21:45:18.777 READ FPDMA QUEUED
60 b8 30 f8 58 0f 40 08 15d+21:45:18.775 READ FPDMA QUEUED
60 b8 28 40 51 0f 40 08 15d+21:45:18.775 READ FPDMA QUEUED
60 b8 20 80 49 0f 40 08 15d+21:45:15.608 READ FPDMA QUEUED
Error 4 occurred at disk power-on lifetime: 1050 hours (43 days + 18 hours)
When the command that caused the error occurred, the device was active or idle.
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
40 41 00 00 00 00 00 Error: UNC at LBA = 0x00000000 = 0
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
60 b8 28 10 d8 0e 40 08 15d+21:45:10.298 READ FPDMA QUEUED
60 80 40 48 ef 0e 40 08 15d+21:45:03.370 READ FPDMA QUEUED
60 b8 38 88 e7 0e 40 08 15d+21:45:03.178 READ FPDMA QUEUED
60 b8 30 d0 df 0e 40 08 15d+21:45:00.444 READ FPDMA QUEUED
60 20 20 f0 d3 0e 40 08 15d+21:45:00.286 READ FPDMA QUEUED
Error 3 occurred at disk power-on lifetime: 1050 hours (43 days + 18 hours)
When the command that caused the error occurred, the device was active or idle.
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
40 41 00 00 00 00 00 Error: UNC at LBA = 0x00000000 = 0
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
60 b8 00 90 81 23 40 08 15d+21:41:08.578 READ FPDMA QUEUED
60 80 10 08 91 23 40 08 15d+21:41:08.336 READ FPDMA QUEUED
60 b8 08 48 89 23 40 08 15d+21:41:01.627 READ FPDMA QUEUED
60 b8 f8 d0 79 23 40 08 15d+21:40:57.546 READ FPDMA QUEUED
60 b8 f0 18 72 23 40 08 15d+21:40:56.899 READ FPDMA QUEUED
Error 2 occurred at disk power-on lifetime: 1050 hours (43 days + 18 hours)
When the command that caused the error occurred, the device was active or idle.
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
40 41 00 00 00 00 00 Error: UNC at LBA = 0x00000000 = 0
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
60 b8 18 f0 d5 17 40 08 15d+21:34:13.263 READ FPDMA QUEUED
60 20 50 10 0c 18 40 08 15d+21:34:06.288 READ FPDMA QUEUED
60 b8 48 58 04 18 40 08 15d+21:34:06.288 READ FPDMA QUEUED
60 b8 40 98 fc 17 40 08 15d+21:34:06.288 READ FPDMA QUEUED
60 b8 38 e0 f4 17 40 08 15d+21:34:06.288 READ FPDMA QUEUED
Error 1 occurred at disk power-on lifetime: 1050 hours (43 days + 18 hours)
When the command that caused the error occurred, the device was active or idle.
After command completion occurred, registers were:
ER ST SC SN CL CH DH
-- -- -- -- -- -- --
40 41 00 00 00 00 00 Error: UNC at LBA = 0x00000000 = 0
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
60 b8 50 28 8b 17 40 08 15d+21:33:33.959 READ FPDMA QUEUED
60 b8 48 70 83 17 40 08 15d+21:33:16.648 READ FPDMA QUEUED
60 80 40 e8 82 17 40 08 15d+21:33:16.647 READ FPDMA QUEUED
ea 00 00 00 00 00 40 08 15d+21:33:16.640 FLUSH CACHE EXT
61 08 30 f0 fd 3f 40 08 15d+21:33:16.638 WRITE FPDMA QUEUED
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% 1072 -
# 2 Short offline Completed without error 00% 1023 -
# 3 Extended offline Completed without error 00% 946 -
# 4 Short offline Completed without error 00% 855 -
# 5 Short offline Completed without error 00% 687 -
# 6 Extended offline Completed without error 00% 610 -
# 7 Short offline Completed without error 00% 519 -
# 8 Short offline Completed without error 00% 279 -
# 9 Extended offline Completed without error 00% 202 -
#10 Short offline Completed without error 00% 111 -
#11 Short offline Completed without error 00% 11 -
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.
首先,我以为我买到的磁盘可能有缺陷。我本以为 SMART 评估会失败。然而,事实并非如此。我不认为电源有缺陷,因为它还不到一年。另外,它是一个 550 瓦的电源,机器的功耗约为 100 瓦。我也不认为电缆有缺陷,因为我运行其他磁盘近一年都没有问题。此外,对于这些其他磁盘,我实际上有电缆有缺陷,我更换了它,但观察结果却不同。
我正在考虑将硬盘退回,尽管我不确定它是否符合退回条件。您觉得如何?这可能是暂时性错误吗?任何建议都值得感激。
答案1
UNC
方法北卡罗来纳大学可纠正的错误,通常是由于中等错误(即物理扇区损坏)造成的。但是,您的 SMART 日志显示错误发生在 LBA 0x0。虽然理论上可能,但我觉得很奇怪,您恰恰在该地址处发生读取错误。报告的 SMART 待处理扇区 (0) 似乎证实了这一点,但我看到许多磁盘没有正确更新该字段。
您能读取 LBA 0 吗?请报告执行以下命令时发生的情况:
dd if=<your_disk> of=/dev/null bs=512 count=1 iflag=direct
如果您可以成功读取 LBA,则很可能是您的布线存在问题,或者您的 HDD 的电子设备出现故障/不稳定。
答案2
非常感谢您的回复。根据您的回复,我决定将驱动器退回 Western Digital。驱动器已经更换。