In Linux Festplatten auf idle setzen

Von: , 22.02.2011 01:05 Uhr

Hallo,

ich habe einen kleinen Heimserver mit Debian Etch. Die System- und Datenplatten sind physikalisch getrennt. Auf der Systemplatte ist unter anderem ein Apache mit einer Mysql-Datenbank. Die Datenplatte ist für Daten zum Ablegen gedacht, wenn ich den Server als Fileserver nutzen will. Um Strom zu sparen möchte ich gerne die Festplatten automatisch nach 10min Inaktivität auf idle setzten. Das ist soweit kein Problem, aber wie bekomme ich es hin, dass z.B. bei einer Mysql-Anfrage oder "Apache-Anfrage" nur die Systemplatte hochfährt und nicht die Datenplatte? Ist das überhaupt möglich?

Freue mich über viele produktive Antworten

7 Antworten zu dieser Frage

  1. Antwort von nach 7 Stunden 0 hilfreich
    Re: In Linux Festplatten auf idle setzen

    Hallo dsmrichter,

    ich kann Dir leider nicht direkt weiterhelfen.

    In der hamburger linux user group sind ein paar Leute, die Server betreuen und sich evtl. mit der Frage schon beschäftigt haben.
    Oder aber, wenn Du in einem Forum für Deine Distri bist, schlage ich das als erstes vor , und sonst das debienforum.de oder das ubuntu forum.

    Viele Grüße
    und viel Glück

    Ronald

  2. Antwort von - abgemeldetes Mitglied - nach 15 Stunden 0 hilfreich
    Re: In Linux Festplatten auf idle setzen

    Moin,
    ich habe einen kleinen Heimserver mit Debian Etch. Die
    System- und Datenplatten sind physikalisch getrennt. Auf der
    Systemplatte ist unter anderem ein Apache mit einer
    Mysql-Datenbank. Die Datenplatte ist für Daten zum Ablegen
    gedacht, wenn ich den Server als Fileserver nutzen will. Um
    Strom zu sparen möchte ich gerne die Festplatten automatisch
    nach 10min Inaktivität auf idle setzten. Das ist soweit kein
    Problem, aber wie bekomme ich es hin, dass z.B. bei einer
    Mysql-Anfrage oder "Apache-Anfrage" nur die Systemplatte
    hochfährt und nicht die Datenplatte? Ist das überhaupt
    möglich?
    Vorab ein Wort der Warnung, Festplatten haben nur eine gewisse
    Anzahl von Start-Stop-Zyklen, da das Beschleunigen der Platten
    aus dem Stand für den Motor eine ordentliche Belastung darstellt.

    Zur Trennung, warum sollte das nicht klappen. Du hast das mysql-
    datadir auf der Systemplatte liegen? Du hast das Documentroot
    deines Apaches auf der Systemplatte liegen? Erzähl doch mal
    etwas genau von deinem Setup, dann lässt sich leichter klären,
    warum deine Datenplatte hochfährt obwohl du das gar nicht möchtest.


    Gruss,
    Marcus

  3. Antwort von nach 18 Stunden 0 hilfreich
    Re: In Linux Festplatten auf idle setzen

    Hallo!
    Üblicherweise sollte die Systemplatte immer mit anlaufen. Also auch wenn nur Daten für die Datenplatte kommen. Da die Datenplatte jedoch mit im Filesystem hängt wird sie als Teil des Systems angesehen und läuft mit an. Ich würde sie aus dem Filesystem rauslassen und mir ein Script schreiben, das sie erst mountet wenn ich sie benötige. Das könnte eventuell gehen.
    Weiteres finden Sie hier:
    http://thinkpad-wiki.org/Linux_Stromsparen

    Gruß Pomwolli

  4. Antwort von nach 22 Stunden 0 hilfreich
    Re: In Linux Festplatten auf idle setzen

    Hallo dsmrichter, Auf der
    Systemplatte ist unter anderem ein Apache mit einer
    Mysql-Datenbank. Die Datenplatte ist für Daten zum Ablegen
    gedacht, wenn ich den Server als Fileserver nutzen will. Um
    Strom zu sparen möchte ich gerne die Festplatten automatisch
    nach 10min Inaktivität auf idle setzten. Das ist soweit kein
    Problem, aber wie bekomme ich es hin, dass z.B. bei einer
    Mysql-Anfrage oder "Apache-Anfrage" nur die Systemplatte
    hochfährt und nicht die Datenplatte? Ist das überhaupt
    möglich?
    Ich nehme an, für das idle-setzen benutzt Du hd-idle bzw. hdparm/sdparm. Damit hast Du ja kein Problem, beide Festplatten unabhängig voneinander zu regeln.
    Aber da mir nicht klar ist, wie Du beide Platten gemountet hast (Datenplatte = /home/??? oder wie), kann ich schlecht was zu dem Problem sagen.
    Um jetzt nur MySQL zu nehmen, die Daten selbst liegen ja per default auf /var/lib/mysql, also wird diese Festplatte/Partition auf jeden Fall bei einer Anfrage anfangen zu rotieren. Aber von wo kommt die MySQL-Abfrage? Das Skript könnte ein cgi-Skript sein, sagen wir mal auf /usr/local/httpd/cgi-bin/, aber genausogut ein TCL/Tk-Skript, das vielleicht auf /home/user/bin liegt. Welche FP steckt da jeweils bei dir dahinter und wohin kommen die bei der MySQL-Abfrage gewonnenen Daten? Werden sie bloss angezeigt, oder in einem Verzeichnis deiner "Daten-FP" abgelegt? Schwer zu sagen...
    Ich weiss es einfach nicht genau, kann dir also leider auch keine exakte Antwort drauf geben. Dazu kommen noch solche unbekannten Grössen wie Journaling oder nicht, noatime in der fstab eingestellt oder nicht?, die die Zugriffe jeweils erhöhen oder erniedrigen und dadurch zumindest deine System-FP unter Umständen kaum zur Ruhe kommen lassen und damit deine Stromsparmethode ihrer Wirksamkeit berauben.

    Viele Grüße
    Marvin

  5. Antwort von nach einem Tag 0 hilfreich
    Re: In Linux Festplatten auf idle setzen

    Sorry, aber von servern hab ich keine Ahnung. tut mir leid.

  6. Antwort von nach einem Tag 0 hilfreich
    Re: In Linux Festplatten auf idle setzen

    Vorweg: Ich habe eine solche Konfiguration noch nicht ausprobiert.

    Grundsätzlich sollten IDE bzw. SATA Platten nach einem Spin-Down nur dann wieder anfahren, wenn auf sie zugegrifen wird. Das macht ATA von alleine, ist also unabhängig vom OS. Mysql-Anfrage oder "Apache-Anfrage" nur die Systemplatte
    hochfährt und nicht die Datenplatte? Ist das überhaupt
    Nun wenn Apache oder MySQL auf die Datenplatte zugreifen, wird es wohl nicht möglich sein. Ansonsten kann eine komfortable RAM Ausstattung die Zugriffshäufigkeit senken.

    Ich hoffe, dass das erstmal weiter hilft.

    Grüße,
    - lars

  7. Antwort von nach 2 Tagen 0 hilfreich
    Re: In Linux Festplatten auf idle setzen

    Kann leider keine Antwort geben, da ich da keine Ahnung habe.

    Jetzt auf diese Frage antworten.