Linux Server automatisch hoch-und runterfahren

shoon

Freizeitschrauber(in)
Hallo,

Ich wollte fragen, ob und wie man einen Linux Server zu einer bestimmten Zeit herunter-und anschliessend wieder hochfahren lässt? Also dass er zum Beispiel jeden Tag um 11 Uhr herunterfährt, und um 8 Uhr wieder hochfährt.
Ich habe es schon mit rtcwake probiert, das klappt eigentlich auch, jedoch muss man dann immer das Datum neu eingeben, und jedes Mal das Kommando eingeben.
Danke im Voraus

mfg shoon
 

Bauer87

Software-Overclocker(in)
Für das hochfahren kann Linux nicht, das ist dann ja gar nicht gestartet. Die Möglichkeit übers BIOS wäre wohl das sinnvollste.

Für das Runterfahren kann man einfach nen Cronjob anlegen. Dabei empfiehlt es sich, nicht direkt powerdown zu starten, sondern ein Script, dass zuerst schaut, ob noch irgendwas wichtiges in Arbeit ist. Das kann man dann ab 20:00 alle 10-20 Minuten aufrufen und macht dann auch der Spätschicht nichts kaputt, wenn die mal Überstunden schieben muss.
 

Dragonix

Freizeitschrauber(in)
Für das hochfahren kann Linux nicht, das ist dann ja gar nicht gestartet. Die Möglichkeit übers BIOS wäre wohl das sinnvollste.

Für das Runterfahren kann man einfach nen Cronjob anlegen. Dabei empfiehlt es sich, nicht direkt powerdown zu starten, sondern ein Script, dass zuerst schaut, ob noch irgendwas wichtiges in Arbeit ist. Das kann man dann ab 20:00 alle 10-20 Minuten aufrufen und macht dann auch der Spätschicht nichts kaputt, wenn die mal Überstunden schieben muss.

Doch, mit dem von ihm genannten rtcwake (oder ein älteres Programm, irgendwas mit nvram) geht auch das Aufwecken durchaus :).
 
TE
TE
shoon

shoon

Freizeitschrauber(in)
Danke für die Antworten:)
Hat alles geklappt mit dem cron dienst und auch das Aufwecken funktioniert jetzt mithilfe des BIOS :)

Für das hochfahren kann Linux nicht, das ist dann ja gar nicht gestartet. Die Möglichkeit übers BIOS wäre wohl das sinnvollste.

Für das Runterfahren kann man einfach nen Cronjob anlegen. Dabei empfiehlt es sich, nicht direkt powerdown zu starten, sondern ein Script, dass zuerst schaut, ob noch irgendwas wichtiges in Arbeit ist. Das kann man dann ab 20:00 alle 10-20 Minuten aufrufen und macht dann auch der Spätschicht nichts kaputt, wenn die mal Überstunden schieben muss.

Danke für den Tipp, jedoch brauche ich das nicht wirklich, da der PC bei mir zu Hause steht ;)

mfg shoon
 

Jimini

PCGH-Community-Veteran(in)
Doch, mit dem von ihm genannten rtcwake (oder ein älteres Programm, irgendwas mit nvram) geht auch das Aufwecken durchaus :).
Richtig, sowas ist möglich. Ich hatte vor einigen Jahren mal einen ziemlich alten Rechner (Pentium II) bei mir stehen, der jeden Morgen um 5 Uhr booten sollte. Wie ich das damals genau gelöst habe, weiß ich leider nicht mehr - es war aber definitiv nichts im BIOS.

MfG Jimini
 

Bauer87

Software-Overclocker(in)
Rtcwake macht auch nichts anderes, als beim Mainboard ne Startzeit zu hinterlegen. Nur halt über ACPI und nicht (direkt) über das BIOS. Unterm Strich stellt das aber keinen all zu großen Unterschied dar, weil sich auch die BIOS-Wakeup-Funktion von nem laufenden Linux-System aus steuern lässt. (So hat es Jimini wohl gemacht.)
 

uk3k

Software-Overclocker(in)
Cron ist das Tool deiner Wahl für einen Shutdown :-) Crontab – Quick Reference | Admin's Choice
Herunterfahren täglich um 11:
Code:
$ sudo su
$ crontab -e
0 11 * * * shutdown -h now
Wichtig: Der cronjob sollte als root installiert werden, da user keine Rechte für shutdown, reboot etc besitzen!

Hochfahren:
Fast alle BIOSe haben die Option einen Rechner zu einer bestimmten Uhrzeit einzuschalten, ansonsten bastelt man sich auf einem anderen Rechner/Server/Android-Phone einen cronjob, der täglich zur gewünschten Zeit den auszuweckenden Server anpingt, den man vorher für WakeOnLAN konfiguriert hat. WOL unterstützen nahezu alle Mainboards!

So würds ich beispielsweise machen :D

Anmerkung am Rande: Tägliche Power-ON/Offs belasten Festplatten enorm, was im Falle eines Servers die angestrebte Verfügbarkeit an Daten massiv beeinträchtigt! Kurz gesagt: Mit jedem Power-ON sinkt die Lebensdauer deiner Festplatten, was zu frühzeitigen Ausfällen und daraus resultierendem Datenverlust und hohen Kosten führen kann, die i.d.R. deutlich höher sind als eventuell anfallande Stromkosten!!! Tägliche Backups auf externe System/Geräte aller wichtigen Daten sind bei solchen Lösungen ein absolutes muss.

Alternativ für rtcwake einfach ein script per cron ausführen, das eintragen des Datums kannst du zum Beispiel mit
Code:
DATE=$(date +%Y-%m-%d)
+1 erledigen: rtcwake

Noch einfacher: rtcwake script via cron und die "halt"-Zeit angeben. Beispiel für 23:00 off und 8:00 on (32400 Sekunden HALT):
rtcwake
root werden und script anlegen
Code:
user@xy$ sudo su
root@xy$ nano /root/poweroff.sh
Script:
Code:
#!/bin/sh
rtcwake -m no -s 32400 && poweroff
Speichern und beenden:
STRG + x
y
Script ausführbar machen:
Code:
root@xy$ chmod +x /root/poweroff.sh
cronjob anlegen:
Code:
root@xy$crontab -e
Code:
0 23 * * * /root/poweroff.sh
Speichern und beenden:
STRG + x
y

Fertig :-)
Der Editor ist dir natürlich freigestellt, persönlich finde ich vi zu "basic" und mc zu buggy, darum nutze ich nano...
 
Zuletzt bearbeitet:
TE
TE
shoon

shoon

Freizeitschrauber(in)
Vielen Dank für deine ausführliche Antwort :)

Ich hatte es jetzt mit einem Cronjob und der Power Up Einstellung im BIOS erledigt, jedoch werde ich mir ein Script mit rtcwake anlegen , denn dies ist doch die bessere Lösung :)

mfg shoon
 
Oben Unten