How to reset SMART results
Actually there is a way to reset S.M.A.R.T. data. You only need simple rs232 to usb converter (uart to ttl) and a few cables attached to hdds diagnostic interfaces. (it's on the right side of sata port, 5 or 4 pins) You must conect RX TX and GND cables (and power cable of course :D) then power on HDD and connect to it with putty or hyperterminal (linux can connect with it's own terminal i guess) for example for seagate drives: for 7200.10 and older baud rate is 9600 for 7200.11 and newer is 38400
commands after connection hit CTRL + Z then type "/1" hit enter type "N1" hit enter when it finishes remove all cables and turn on HDD like normal to see changes :)
for other hdd info use google :)
SMART data is not very standard between manufacturers, but the Hard Drive Temperature test should indicate if the drive's temperature has gone over a threshold in the past: http://en.wikipedia.org/wiki/S.M.A.R.T.#Known_ATA_S.M.A.R.T._attributes
The thinking is that an overheat increases your chances for failure. SMART isn't saying your drive is bad, but has an increased chance for failure in the future.
SMART is meant to be an audit of the drives history and is maintained by the drive itself, so you cannot "reset" or "clear" SMART values.
The point of current / worst attributes like temperature is exactly this: to tell you if the drive has ever been outside its max operating temperature, and thus might have suffered permanent damage.
That's why it says "failed in the past", not "failing now": you did just barely touch the max-temp threshold. Note the attribute display shows "normalized: 50, threshold: 45, worst: 45". (These are 0..200 normalized values like for any other attribute, not raw Celsius temps.)
You also have some bad sectors (uncorrectable sector errors), so whether the brief high temperature caused that or not, it's probably time to ditch that drive.
A better SMART software UI would show you the current and max-ever temp. e.g.
smartctl -a /dev/sda
or smartctl -x /dev/sda
(-x
prints all available SMART and non-SMART data it can get from the drive, including a temperature history log if the drive has one, with an ASCII bar graph.)
smartctl -x includes this for an old WD Green 1TB (WD10EADS) hard drive:
Current Temperature: 36 Celsius
Power Cycle Min/Max Temperature: 25/42 Celsius
Lifetime Min/Max Temperature: 35/46 Celsius
The software you're using looks like it's only showing the current temp, which is slightly below the threshold, but it's not going to hide the fact that the drive was out-of-spec at some point in the past.
You could certainly justify ignoring that momentary high-temperature, if you really did correct it in minutes. But you won't (or shouldn't) ever be able to make the drive itself lie about the fact that it was over its rated max temp for some time, and thus the attribute did fail in the past.
You can configure smartd
to ignore any given attribute so you can still get a useful notification if anything else crosses a threshold into officially-failing territory.: smartd.conf(5)
says:
-i ID [ATA only]
Ignore device Attribute number ID when checking for failure of Usage Attributes. ID must be a decimal integer in the range from 1 to 255. This Directive modifies the behavior of the '-f' Directive and has no effect without it.This is useful, for example, if you have a very old disk and don't want to keep getting messages about the hours-on-lifetime Attribute (usually Attribute 9) failing. This Directive may appear multiple times for a single device, if you want to ignore multiple Attributes.
Extended temperature-history attributes
I just got a new 6TB Seagate Barracuda (ST6000DM003-2CY186 firmware 0001, a 5425 RPM drive), which has some interesting stats, including time spent exceeding min/max operating points, and high/low of short-term and log-term temps.
SCT Status Version: 3
SCT Version (vendor specific): 522 (0x020a)
Device State: Active (0)
Current Temperature: 33 Celsius
Power Cycle Min/Max Temperature: 27/33 Celsius
Lifetime Min/Max Temperature: 27/33 Celsius
Under/Over Temperature Limit Count: 0/0
SCT Temperature History Version: 2
Temperature Sampling Period: 3 minutes
Temperature Logging Interval: 59 minutes
Min/Max recommended Temperature: 14/55 Celsius
Min/Max Temperature Limit: 10/60 Celsius
Temperature History Size (Index): 128 (2)
And in the full-detail section:
0x05 ===== = = === == Temperature Statistics (rev 1) ==
0x05 0x008 1 33 --- Current Temperature
0x05 0x010 1 - --- Average Short Term Temperature
0x05 0x018 1 - --- Average Long Term Temperature
0x05 0x020 1 33 --- Highest Temperature
0x05 0x028 1 30 --- Lowest Temperature
0x05 0x030 1 - --- Highest Average Short Term Temperature
0x05 0x038 1 - --- Lowest Average Short Term Temperature
0x05 0x040 1 - --- Highest Average Long Term Temperature
0x05 0x048 1 - --- Lowest Average Long Term Temperature
0x05 0x050 4 0 --- Time in Over-Temperature
0x05 0x058 1 55 --- Specified Maximum Operating Temperature
0x05 0x060 4 0 --- Time in Under-Temperature
0x05 0x068 1 13 --- Specified Minimum Operating Temperature
(The drive has only been powered on for a couple minutes; that's presumably why there's a -
for no data in some of the fields.)
If you drive has these extended attributes, you can show someone that the time spent outside of allowed temp was very short (if that's the case). Presumably if you were going to modify the SMART data, you'd just have done that and removed any mention of it being out-of-range ever, but obviously you can't 100% trust any data from a 2nd-hand drive that someone's trying to sell you.
See https://superuser.com/questions/1389522/what-does-it-mean-when-my-new-hdd-reports-errors-at-a-time-that-shouldnt-exist for more about used drives with "odometer rollback" on their "Power_On_Hours" attribute for example.