Western Digital WDC NAS Red Harddiscs
WD Red - Desktopfestplatten
http://wiki.ubuntuusers.de/WD_IntelliPark
Betroffen sind laut Western Digital lediglich die Modelle WD1000FYPS-01ZKB0, WD7500AYPS-01ZKB0 und WD7501AYPS-01ZKB0. Für andere Modelle wird die hier erläuterte Firmwareänderung nicht empfohlen! Das Problem tritt jedoch auch bei einigen wenigen Exemplaren der Scorpio Blue Reihe auf, z.B. WD5000BEVT. Hier darf die Software von Western Digital eingesetzt werden.
Ob das eigene Laufwerk betroffen ist, kann man durch Auslesen der SMART-Daten feststellen. Hierzu sei auf den Wiki-Artikel Festplattenstatus verwiesen. Folgendes Kommando zeigt die Anzahl der bisher aufgelaufenen Load Cycles und Betriebsstunden, wobei X durch den jeweiligen Laufwerksbuchstaben zu ersetzen ist:
sudo smartctl -A /dev/sdX | egrep "ID|Load|Power"
Die Ausgabe würde dann zum Beispiel so aussehen:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
9 Power_On_Hours 0x0032 100 100 000 Old_age Always - 558
12 Power_Cycle_Count 0x0032 100 100 000 Old_age Always - 144
192 Power-Off_Retract_Count 0x0032 200 200 000 Old_age Always - 26
193 Load_Cycle_Count 0x0032 186 186 000 Old_age Always - 40082
Die hier gezeigten Angaben stammen von einem fast neuen Laufwerk (WD7500AADS), das nach nur 1,5 Monaten gut 40000 Parkvorgänge vollzogen und damit bereits 7% seiner Lebensdauer verbraucht hat. Letzteres sieht man an VALUE = 186, der Neuwert ist 200.
Laut Western Digital sind ihre Platten der Serie „Green“ besonders umweltfreundlich. Das finde ich grundsätzlich nicht verkehrt. Leider scheinen aber alle diese Platten einen kritischen Konfigurationsfehler zu haben. Standardmäßig parken diese Platten ihre Schreib-/Leseköpfe nach fünf Sekunden Nichtbenutzung außerhalb des Plattenstapels, um Energie zu sparen. Das Feature hat die Firma „IntelliPark“ getauft. Das klingt nicht schlecht, ist es aber, wenn man die Herstellerspezifikation gelesen hat. Für lediglich 300.000 Parkvorgänge sind diese Festplatten ausgelegt. Noch schlechter wird es einem, wenn man bedenkt, dass Linuxmaschinen normalerweise nach ca. zehn bis 30 Sekunden die Dateisystemcaches auf die Platten wegschreiben.
Bereits nach 13 Stunden in Betrieb war der Zähler der Parkvorgänge - Load Cycle Count - meiner neuen Platte bereits bei über 400. Meine anderen Platten haben nach mehreren Jahren jeweils nur knappe 2000 dieser Parkvorgänge.
Quelle1)
If you have a Western Digital EADS or EARS drive, please check you SMART information before it's too late :
$ sudo smartctl -A /dev/sda | grep "^193" 193 Load_Cycle_Count 0x0032 253 253 000 Old_age Always - 14493
If the Load cycle count exceeds 1000, you're probably affected by the idle3 timer problem.
Syntax
idle3ctl [options] /dev/device -h : display help -l : show license and exit immediately -V : show version and exit immediately -v : verbose output --force : force even if no Western Digital HDD are detected -g : get raw idle3 timer value (default action) -g100 : get idle3 timer value as wdidle3 v1.00 would display it -g103 : get idle3 timer value as wdidle3 v1.03/v1.05 would display it -d : disable idle3 timer -s<value> : set idle3 timer raw value (1-255)
Get idle3 timer raw value
# idle3ctl -g /dev/sda
Disable idle3 timer
# idle3ctl -d /dev/sda
Set the idle3 timer to 10s
# idle3ctl -s 100 /dev/sda
Idle3ctl should be compatible with all modern Western Digital HDD driven by a real SATA controler. Compatibility with SATA-to-USB adapters is uncertain. Since idle3ctl uses SMART ATA commands to get and set the idle3 timer, it should work if SMART information can be read from your drive.
The idle3 timer seems to be a power on only setting. That means that the drive needs to be powered OFF and then ON to use the new setting.
Source code and releases can be found on the SourceForge project pages.
After downloading the tarball, for example the 0.9.1 release (idle3-tools-0.9.1.tar.gz), uncompress it :
$ tar xzvf idle3-tools-0.9.1.tar.gz
Change to the source directory, and compile the tool :
$ cd idle3-tools-0.9.1
$ make
You should get the idle3ctl executable :
$ ls idle3ctl idle3ctl $ ./idle3ctl -V idle3ctl v0.9.1
And run it with root permissions to get or set the idle3 value :
$ sudo ./idle3ctl -g /dev/sda
Now you can optionnally install the tool to the /sbin directory
$ sudo make install
Please note that, as the idle3 setting of your disk is permanent, you only need to run idle3ctl once per drive.