... oder was passiert hier?
Ich habe für meinen Server über mein Script "hibernate-starter", das aus der crontab von root gestartet wird, einen Schlaf-/Wach-Rhythmus eingerichtet um Strom zu sparen. Das Script überprüft einige Bedingungen (läuft rsync, läuft eine PVR-Aufnahme, schaut noch jemand TV über tvheadend, etc.), beendet sich, sobald eine Bedingung anschlägt, oder schickt den Server mit der definierten Wakeupzeit oder rechtzeitig zur nächsten geplanten PVR-Aufnahme in rtcwake dann in den hibernate-Zustand. So sieht roots crontab dazu aus:
1 2 3 4 5 | 5 22,23 * * 0-4 /.../hibernate-starter 05:15 5 0-3 * * 1-5 /.../hibernate-starter 05:15 5 7-12 * * 1-4 /.../hibernate-starter 15:30 5 7-10 * * 5 /.../hibernate-starter 13:00 5 0-5 * * 0,6 /.../hibernate-starter 08:00 |
Solange nun keiner eingreift, läuft alles wie geplant. Wenn man aber den Server per Knopf oder WOL aufweckt, kommt es manchmal vor, dass er direkt noch während des Aufwachens das hibernate-starter Skript wieder aufruft - und das eben auch komplett neben den vorgesehenen Zeiten, zuletzt z.B. um 08:17:06 an einem Wochentag, in diesem Fall dann zum Aufwachen um 15:30, wie es vorher auch beabsichtigt war. Zu dem Zeitpunkt in dem das Skript dann durchläuft (10-15 Sek. nach dem WOL), ist z.B. der tvheadend Service noch nicht mal wieder aktiv, was ich an dem Logfile meines Skripts erkennen kann (die PVR/TV-Checks geben halt Fehler aus).
Ich verstehe nicht, warum das passiert - sagen wir einmal, der Server wird aus der ersten Zeile meines crontab Ausschnittes heraus um 22:05 Uhr schlafen geschickt, und wacht um 05:15 wieder auf, dann holt er nie die verpassten Durchläufe von 23:05, 0:05 bis 3:05 nach. Wie kann es kommen, dass das beim manuellen Aufwecken passiert?
Besten Dank im Voraus für eure Hilfe!