T60 - Festplatte im Ultrabay-Schacht zeitweise abschalten

V164

Member
Themenstarter
Registriert
7 Dez. 2010
Beiträge
507
Hallo zusammen,

ein T60 eignet sich bekanntlich hervorragend dafür, eine zweite Festplatte im Ultrabay-Schacht zu platzieren. Ich denke ich werde nicht der einzige sein, der diese zweite Festplatte als Datengrab nutzt. da ich darauf keinen ständigen Zugriff benötige (bspw. beim surfen), wollte ich diese Festplatte sozusagen kontrolliert und automatisch abschalten. Da es für die einwandfreie Funktion ein paar Hürden gibt, möchte ich Euch gerne mein Vorgehen vorstellen. Die folgende Zusammenstellung ist unter Debian Wheezy getestet.

Ein paar Gedanken vorab:

Zur Veränderung der Konfiguration von Festplatten eignet sich das Kommando hdparm. Dieses Kommando spricht die Festplatten über ihren Device-Namen an. hdparm soll also beim Systemstart die Festplatte im Ultrabay-Schacht nach einer vorab definierten Zeit ohne Aktivität abschalten. Das folgende Kommando regelt den spin-down:

Code:
hdparm -S [Zeit] /dev/sdb

(wie ich auf den Device-Namen sdb komme, wird weiter unten unter "Fester Device-Namen" erklärt).

Die fest eingebaute Festplatte soll von dieser Einschränkung nicht betroffen sein. Zu dem Kommando ist noch anzumerken, dass die Zeit bei hdparm etwas merkwürdig eingestellt wird. Zahlen zwischen 1 und 240 entsprechen jeweils dem Wert n * 5 Sekunden. Der Wert von 60 steht also bspw. für 5 Minuten.

Problemstellung:

Beim Systemstart werden zuerst alle IDE-Geräte eingebunden. Im T60 wird das Gerät im Ultrabay-Schacht über IDE angesprochen, weshalb es meine Festplatte darin meist zur /dev/sda geschafft hat. Meist deswegen, weil als Systemspeicher eine SSD eingebaut ist, seltsamerweise hat es auch hin und wieder die SSD geschafft zur /dev/sda zu werden. Grundsätzlich gilt: Die erste erkannt Festplatte wird zur sda, die zweiter zur sdb usw.

Da ich mit diesem "Unsicherheitsfaktor" natürlich nicht arbeiten konnte, musste zuerst gewährleistet werden, dass die Festplatte im Ultrabay-Schacht immer als /dev/sdb eingebunden wird.

Fester Device-Name:

Wir unterbinden also als erstes, dass zuerst nach IDE-Geräten gesucht wird. Dazu tragen wir das Modul ata_piix in Datei etc/modprobe.d/blacklist.conf ein:

Code:
# Ultrabay später einbinden
blacklist ata_piix

Danach führt man

Code:
root@rechner: update-initramfs -k all -u

aus. Damit wird also verhindert, dass zuerst nach IDE-Geräten gesucht wird. Da später jedoch trotzdem das IDE-Gerät erkannt werden soll, fügt man die die Datei /etc/rc.local noch folgende Zeile ein:

Code:
/sbin/modprobe ata_piix

Wichtig ist hierbei, dass diese Zeile vor dem Befehl exit 0 in diese Datei eingetragen wird (aber das erklärt sich ja von alleine).

Somit haben wir schonmal die festgelegten Device-Namen vorbereitet. Die Festplatte im Ultrabay-Schacht wird so immer zur /dev/sdb.

hdparm konfigurieren:

Jetzt muss noch hdparm angepasst werden. Dabei hat man eigentlich die Möglichkeit, die Datei /etc/hdparm.conf zu bearbeiten. Doch egal, wie ich es anstellte, die Änderungen wurden bei mir nicht wirksam. Dazu habe ich dann auch einige Fundstellen im Internet gefunden. Also nahm ich mir abermals die Datei /etc/rc.local vor; die eingetragenen Befehle werden automatisch beim Systemstart ausgeführt. Normalerweise sollte hier der Eintrag

Code:
/sbin/hdparm -S 60 /dev/sdb

ausreichen. Jedoch schlugen auch hier meine Versuche fehl. Im ubuntuusers-wiki fand ich den Hinweis, dass unter Umständen manche Befehle zu früh übergeben werden, so dass der gewünschte Effekt fehlschlägt. Das kann folgendermaßen in der Datei /etc/rc.local geregelt werden:

Code:
(/bin/sleep 30 && /sbin/hdparm -S 60 /dev/sdb)

Damit sind alle nötigen Änderungen vorgenommen. Der Wert 60 stellt für meinen Gebrauch einen guten Kompromiss dar. Wenn ich mein T60 starte, aber nur vor habe im Netz zu surfen, wird die HDD im Ultrabay-Schacht nach 5 Minuten abgeschaltet, Wenn ich sie jedoch benötige, reicht die Zeit zur Bearbeitung bspw. eines Dokuments aus, so dass sie nicht ständig in den Ruhezustand wechselt. Dieser Zeitwert ist selbstverständlich individuell anpassbar. Wer möchte, kann (wie ich) für die HDD im Ultrabay-Schacht in der Datei etc/fstab noch die Optionen noauto,user übergeben.

Vielleicht helfen diese Zeilen dem Einen oder Anderen etwas.

Viele Grüße
Frank

Fundstellen / Quellen:
http://thinkpad-forum.de/archive/index.php/t-118536.html?
http://wiki.ubuntuusers.de/rc.local
 
Zuletzt bearbeitet:
Hi,

gute Lösung zum Fixieren des Devicenamens.

Anmerkung dazu: unter Ubuntu (nicht Debian 6.0) stört nach meinem Verständnis das Skript /usr/lib/pm-utils/power.d/95hdparm-apm. Es wird bei jedem Wechsel der Stromquelle und beim Booten aufgerufen, setzt den APM-Level und macht damit nach meinem Verständnis den Timeout wieder kaputt. Kannst Du das nachvollziehen? Dein letztes Kommando scheint mir die Umgehung dieser Race Condition beim Systemstart zu sein.

Natürlich kann ich mir an dieser Stelle den Hinweis nicht verkneifen, daß TLP seit Version 0.3.0 den Geräten die passenden Einstellungen samt Spindown Timeout anhand der ID zuordnen kann: TLP Einstellungen – Festplatten und Controller. Die Anregung verdanke ich dem von dir verlinkten Thread.
 
Zuletzt bearbeitet:
Anmerkung dazu: unter Ubuntu (nicht Debian 6.0) stört nach meinem Verständnis das Skript /usr/lib/pm-utils/power.d/95hdparm-apm. Es wird bei jedem Wechsel der Stromquelle und beim Booten aufgerufen, setzt den APM-Level und macht damit nach meinem Verständnis den Timeout wieder kaputt. Kannst Du das nachvollziehen?

Hi linrunner,

nachvollziehen (und testen) kann ich das leider nicht, da bei mir Debian Wheezy läuft. Das habe ich oben auch gleich noch ergänzt. Aber vielleicht hat ja jemand die Gelegenheit, das unter Ubuntu nachzuvollziehen. Würde mich selber interessieren.

Dein letztes Kommando scheint mir die Umgehung dieser Race Condition beim Systemstart zu sein.

Stimmt genau...

Natürlich kann ich mir an dieser Stelle den Hinweis nicht verkneifen, daß TLP seit Version 0.3.0 den Geräten die passenden Einstellungen samt Spindown Timeout anhand der ID zuordnen kann: TLP Einstellungen – Festplatten und Controller. Die Anregung verdanke ich dem von dir verlinkten Thread.

Das ist natürlich auch ein Weg ans Ziel. Da hätte ich mir ein wenig Arbeit ersparen können. Aber das finde ich ja auch so genial. Man kann selber darüber nachdenken, auf welchem Weg man ein Problem angeht und dann Schritt für Schritt an der Lösung arbeiten.

Grüße
Frank
 
Hi,

hier:

Code:
-rwxr-xr-x 1 root root  700 Nov  1  2009 anacron
-rwxr-xr-x 1 root root  562 Apr 12  2011 disable_wol
-rwxr-xr-x 1 root root 1316 Apr 12  2011 hal-cd-polling
-rwxr-xr-x 1 root root  870 Apr 12  2011 intel-audio-powersave
-rwxr-xr-x 1 root root 1290 Apr 12  2011 journal-commit
-rwxr-xr-x 1 root root 2722 Apr 12  2011 laptop-mode
-rwxr-xr-x 1 root root  201 Apr 12  2011 pcie_aspm
-rwxr-xr-x 1 root root 1222 Apr 12  2011 readahead
-rwxr-xr-x 1 root root 1131 Apr 12  2011 sata_alpm
-rwxr-xr-x 1 root root  652 Apr 12  2011 sched-powersave
-rwxr-xr-x 1 root root 2495 Apr 12  2011 wireless
-rwxr-xr-x 1 root root 1642 Apr 12  2011 xfs_buffer
-rwxr-xr-x 1 root root  354 Sep 22 21:34 zztlp
 
Danke. Debian-üblich ist keine 95hdparm-apm da, d.h. im naturbelassenen Zustand ist APM=128 (Hardwaredefault). Stattdessen warst Du mit TLP im Rennen ... ;)
 
  • ok1.de
  • thinkstore24.de
  • ok2.de - Notebook Computer Server
  • Preiswerte-IT - Gebrauchte Lenovo Notebooks kaufen

Werbung

Zurück
Oben