Re: Stromverbrauchs-Tuning / Adaptec 29310LPE
Am 27.05.2016 um 23:06 schrieb Sebastian Suchanek:
Hallo Liste!
> aktuell richte ich mir gerade einen neuen Heimserver, basierend auf dem
> letzten c't-Bauvorschlag[1] ein. Um auch wirklich einen niedrigen
> (Idle-)Stromverbrauch zu erhalten, habe ich auf einem noch
> jungfräulichen Jessie mit powertop geforscht und optimiert, wobei ich
> die powertop-Vorschläge in /etc/rc.local übernommen habe. Abgesehen von
> dem lästigen Bug, dass /etc/hdparm.conf nicht ausgewertet wird, hat das
> zunächst auch ganz gut funktioniert[2].
>
> Als ich allerdings noch einen Adaptec 29320LPE mit einbauen wollte,
> gingen die Probleme los: Wenn der Adapter eingebaut ist, scheint bei den
> meisten - nicht allen! - Bootvorgängen die /etc/rc.local nicht bzw.
> nicht richtig ausgeführt zu werden.
> [...]
Heute bin ich endlich mal dazu gekommen, das Problem noch einmal näher
zu untersuchen. Des Rätsels Lösung war folgendes: Zum Einschalten des
SATA-Link-Powermanagements habe ich gleich zu Anfang der /etc/rc.local
mehrere Einträge der Art
| echo 'min_power' >
'/sys/class/scsi_host/host0/link_power_management_policy'
die im "nackten" Mainboard von "host0" bis "host5" gehen. Wie der
Adaptec in diese Liste eingebunden wird, ist anscheinend nicht 100%ig
deterministisch: Meistens wird er von Debian als "host0" eingebunden,
wodurch sich die mainboardeigenen SATA-Ports nach host[1-6] verschieben.
Anscheinend wird er manchmal aber auch als host6 eingebunden, sonst
hätte es ja nicht bei jedem ~4. Bootvorgang funktioniert...
Da der Adaptec kein Link-Powermanagement kann (entweder generell nicht
oder weil (noch) keine Laufwerke dran hängen - keine Ahnung...)
existiert im betreffenden host-Verzeichnis die Datei
"link_power_management_policy" nicht und das /etc/rc.local-Skript
schmiert gleich zu Beginn ab.
Gelöst habe ich das Problem nun dadurch, dass ich nun vor dem Aufruf des
o.g. echo-Befehls einfach auf das Vorhandensein
link_power_management_policy-Datei teste. Bei dieser Gelegenheit habe
ich dann auch noch einen Eintrag für host6 nach obigem Muster ergänzt,
der natürlich ebenfalls vorher das Vorhandensein der policy-Datei testet.
Tschüs,
Sebastian
Reply to: