# Linux Server automatisch hoch-und runterfahren



## shoon (15. Januar 2013)

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


----------



## Dragonix (15. Januar 2013)

Mit deinem cron dienst kannst du solche Jobs anlegen, z.b. hier Linux-Kompendium: crontab , http://www.opensuse-forum.de/gelöst...nger-startprobleme/allgemeines-f17/t7912-f20/ etc (mehr findest du leicht bei google, Suchwörter: cron, crontab, shutdown, herunterfahren, linux, ...)
Hochfahren sollte sich aber eigentlich sehr einfach direkt im BIOS/EFI einstellen lassen.


----------



## Bauer87 (16. Januar 2013)

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 (16. Januar 2013)

Bauer87 schrieb:


> 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 .


----------



## shoon (16. Januar 2013)

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



Bauer87 schrieb:


> 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 (17. Januar 2013)

Dragonix schrieb:


> 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 (17. Januar 2013)

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 (17. Januar 2013)

Cron ist das Tool deiner Wahl für einen Shutdown  Crontab – Quick Reference | Admin's Choice
Herunterfahren täglich um 11: 

```
$ 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 

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

```
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

```
user@xy$ sudo su
root@xy$ nano /root/poweroff.sh
```
Script:

```
#!/bin/sh
rtcwake -m no -s 32400 && poweroff
```
Speichern und beenden: 
STRG + x
y
Script ausführbar machen:

```
root@xy$ chmod +x /root/poweroff.sh
```
cronjob anlegen:

```
root@xy$crontab -e
```


```
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...


----------



## shoon (19. Januar 2013)

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


----------

