I have 6 drives in a NAS box. Two of them are Seagates, and they return high RAW_VALUES for errors; see below.
My other drives show far lower values.
Is this cause for alarm? Or just the way Seagates report?
Look at Raw_Read_Error_Rate
and Seek_Error_Rate
:
# smartctl -a /dev/ada1
=== START OF INFORMATION SECTION ===
Device Model: ST3000DM001-9YN166
Serial Number: W1F09S26
LU WWN Device Id: 5 000c50 0456076fc
Firmware Version: CC4C
User Capacity: 3,000,592,982,016 bytes [3.00 TB]
Sector Sizes: 512 bytes logical, 4096 bytes physical
Device is: Not in smartctl database [for details use: -P showall]
ATA Version is: 8
ATA Standard is: ATA-8-ACS revision 4
Local Time is: Sat Aug 18 17:34:24 2012 EDT
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: ( 249) Self-test routine in progress...
90% of test remaining.
Total time to complete Offline
data collection: ( 575) seconds.
Offline data collection
capabilities: (0x7b) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new
command.
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: ( 255) 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 111 099 006 Pre-fail Always - 34053632
3 Spin_Up_Time 0x0003 093 092 000 Pre-fail Always - 0
4 Start_Stop_Count 0x0032 100 100 020 Old_age Always - 32
5 Reallocated_Sector_Ct 0x0033 100 100 036 Pre-fail Always - 0
7 Seek_Error_Rate 0x000f 060 055 030 Pre-fail Always - 21480133713
9 Power_On_Hours 0x0032 097 097 000 Old_age Always - 2696
10 Spin_Retry_Count 0x0013 100 100 097 Pre-fail Always - 0
12 Power_Cycle_Count 0x0032 100 100 020 Old_age Always - 32
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
189 High_Fly_Writes 0x003a 100 100 000 Old_age Always - 0
190 Airflow_Temperature_Cel 0x0022 064 061 045 Old_age Always - 36 (Min/Max 34/38)
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 - 28
193 Load_Cycle_Count 0x0032 100 100 000 Old_age Always - 63
194 Temperature_Celsius 0x0022 036 040 000 Old_age Always - 36 (0 19 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 - 43748536879750
241 Total_LBAs_Written 0x0000 100 253 000 Old_age Offline - 2867098636991
242 Total_LBAs_Read 0x0000 100 253 000 Old_age Offline - 17478042509157
SMART Error Log Version: 1
No Errors Logged
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Extended offline Self-test routine in progress 90% 2696 -
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.
I find the self-test results very reliable, and they are self-explanatory (either the last one run failed, or passed).
The various vendor-specific attributes are just that. There is actually no standardized way to interpret them (which is why smartmon tools maintains a drive database with interpretations for those values). You can find a description of the meanings of many if the flags here: http://en.wikipedia.org/wiki/S.M.A.R.T.#Known_ATA_S.M.A.R.T._attributes
The line
SMART overall-health self-assessment test result: PASSED
is derived from the values printed below it, translated, normalized, and given thresholds by the drive database.For the normalized values, lower is usually better, but not all the flags indicate things that will themselves portend mechanical failure (the ones with a threshold are more likely to). Things like uncorrectable read errors, spin-up failures, etc. are likely indicators.
Your drive looks to be in fine shape, from those results.
Seagate uses SER (Seek_Error_Rate) to code two distinct counters: 16 high weight bits are used for Seek Error Count, and 32 low weight bits used for a Seek count. You would prefer hexadecimal display to ease your reading of these two counters (6 nibbles = 2 for error count + 4 for seek count).
RRER (Raw_Read_Error_Rate) does not show an incremental counter, but the result of something like -10 log (number of errored sectors / total bits on disk), which explains there is a min and a max. Stay near the max is better.
More explanations on this here : http://www.users.on.net/~fzabkar/HDD/Seagate_SER_RRER_HEC.html
Every Seagate drive I've ever seen reports bizarre raw values for those two fields.
One thing you can do is the same thing the utility (and drive) does internally: check the normalized value against the threshold value. When the value drops to the threshold, the attribute will report as failing (or failed).
Another thing you can do is never buy another Seagate drive. I went this route, and I won't buy another until they learn to write firmware.
The
smartctl
man page on my boxes provides a link to one of its authors' article in Linux Journal; in particular, listing 3 explains the output ofsmartctl -a
.Even though it's over 10 years old, having read it I find it's still relevant and provides an authoritative explanation.
what I do is check the read hwecc and seek error rates. I also check to make sure relocated or pending sectors arent present. after I get the # of the first 3 I do a bunch of copying to and from the drive then check the # again. if they have not greatly gone up I keep an eye on the drive. If they shoot up I call the vender and see what has to be done to get an rma.
I have a 3 yr old drive with 23441590 read error 206428348 seek and 27659067 ecc. thats powerd on hrs btw. and my 5.5 yar old drive has 0 0 687123415 ecc. Smart failure is a horable early warning system, the figures though can be used to keep a tab on drives. I have seen very few drives have a smart predicted failure before it happens. also fyi my 3 yr old drive is a seagate and the 5 yr is a samsung the seagate runs hot to :/ all of my currently running seagates have alot of errors where most of my other brands dont.
another thing to do is keep occasional benchmarks of your drives. hdd tune is a good example for windows. if you run it on a drive that does not have a swap file or was booted from the graph can tell you if there are any areas that have read problems. modern drives often stair step from 50mb+ to 25 or so mb read rate. if you have sudden dips it is likely that there is a weak or bad sector in that area. If you keep a benchmark of the drive every month or 3 then you can have a good idea if something suddently happens. the D4xx latitudes were a good exmaple. when the drive controller starts failing the read rate would start at 5mb or so and occasionally spike up above 10mb we got those drives rma'd all the time due to that. you may have to boot from a bartpe disk or the like to ensure nothing else is using the drive when you test though.
I often use these results plus hdd tune and such to get rma's on drives before they completely die.