hdparm Festplatten in Standby schalten

hdparm Festplatten in Standby schalten

Festplatten verbrauchen Strom und müssen auch nicht immer Laufen. SSD verbrauchen zwar weniger Strom aber kosten auch um einiges mehr pro GB. Es macht daher Sinn die Backup Festplatte herunterzufahren wenn sie nicht benötigt wird.

Dies kann man unter Linux am einfachsten mit hdparm machen.

In diesem Beispiel arbeite ich mit der Festplatte /dev/sdc

Nun überprüft Ihr am besten erst einmal, ob sich eure Platte überhaupt in den Leerlauf schicken lässt. Alle halbwegs aktuellen Platten und Controller sollten dazu eigentlich in der Lage sein, aber bevor Ihr euch später wundert warum das nicht funktioniert, solltet Ihr erst mal einen kleinen Test machen. Ruft dazu hdparm mit der Option -C auf

[stextbox id=“bash“]hdparm -C /dev/sdc[/stextbox]
[stextbox id=“info“]/dev/sdc:
drive state is:  active/idle[/stextbox]

Man sieht, dass hdparm den Status korrekt abrufen konnte und die Platte läuft, man sollte dies auch an ihrem Betriebsgeräusch erkennen können. Nun könnt Ihr die Platte einmal von Hand abschalten.

[stextbox id=“bash“]hdparm -y /dev/sdc[/stextbox]

Nach einem weiteren Test mit hdparm -C sollte jetzt diese Ausgabe kommen

[stextbox id=“bash“]hdparm -C /dev/sdc[/stextbox]
[stextbox id=“info“]/dev/sdc:
drive state is:  standby[/stextbox]

Sobald wieder auf die Platte zugegriffen wird, wird die Platte wieder automatisch anlaufen und ihre Daten preisgeben. Nun wäre es recht umständlich die Platte immer von Hand abzuschalten, besser wäre es, wenn sich die Platte nach einer Gewissen Zeit ohne Zugriffe automatisch abstellen könnte.

Zeitlich gesteuertes herunterfahren

Dazu gibt es die Option -S XX. Über sie könnt ihr eine Zeitspanne definieren, ab der die Platte abgeschaltet wird. Der Zahlenwert hinter dem Schlüssel drückt nicht direkt die Zeit aus, sondern dient nur als Multiplikator.

Auszug aus der Man Page
Values from 1 to 240 specify multiples of 5 seconds, yielding timeouts from 5 seconds to 20 minutes. Values from 241 to 251 specify from 1 to 11 units of 30 minutes, yielding timeouts from 30 minutes to 5.5 hours. A value of 252 signifies a timeout of 21 minutes. A value of 253 sets a vendor-defined timeout period between 8 and 12 hours, and the value 254 is reserved. 255 is interpreted as 21 minutes plus 15 seconds. Note that some older drives may have very different interpretations of these values.

Ein Wert von bspw. 120 entspricht daher 120*5 Sekunden, also 600 Sekunden oder 10 Minuten. Zu kurz sollte man das Timeout nicht wählen, da zu häufiges Runter- und wieder Hochdrehen des Motors die Lebensdauer der Platte beeinträchtigen kann.

[stextbox id=“bash“]hdparm -S 120 /dev/sdc[/stextbox]

Bei 5 Minuten wäre der wert von 60 einzutragen. Wenn man 30 Minuten warten will dann muss der wert 241 eingetragen werden.

Automatisch beim Systemstart setzen

Dies kann man entweder bei jedem Systemstart manuell setzen oder Ihr tragt es in die /etc/hdparm.conf ein.

...
/dev/sdc {
        spindown_time = 120
}

Beim nächsten Boot werden die Einstellung automatisch übernommen und die Festplatte fährt nach 10 Minuten ohne Aktivität automatisch runter.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*