Hallo PVPler,
ich melde mich nochmal mit einem kleinen Linux-Tutorial, für alle die Gameserver auf einer Linuxmaschine betreiben.
Um das folgende Tutorial abarbeiten zu können müsst ihr euren Linuxserver mit folgendem ausgestattet haben:
Eigentlich könnte dieses Tutorial auch ein How-To Crontab benutzen sein, denn nichts anderes möchte ich euch hier, ein wenig stärker auf Gameserver ausgerichtet, zeigen.
Normalerweise ist crontab in den gängigen Linuxdistributionen vorinstalliert, was ihr (falls nicht bereits passiert) nachinstallieren müsst ist screen.
Nun stelle ich ein paar Behauptungen auf, die ihr bitte durch eure Daten ersetzt. Wichtige Punkte werde ich fett markieren. Ich gehe mal davon aus, dass ihr einen Nutzer namens pornopaul eingerichtet habt. Der Nutzer hat sein Homeverzeichnis in /home/pornopaul. Direkt in diesem Homeverzeichnis liegt ein Minecraftserver /home/pornopaul/minecraftserver.jar. Nun starten wir mal den Minecraftserver mittels:
Leider muss pornopaul jetzt immer eingeloggt sein, wenn seine Freunde Minecraft spielen wollen, was dem Sinn eines dedicated Servers nicht sehr nahe kommt. Also geht er dazu über Minecraft im screen zu starten. Das geht mittels:
Zur Erklärung:
screen - wir starten das Programm screen
-m - Auf jeden Fall wird eine neues Session erstellt
-d - Der Screen wird nicht geöffnet, sondern direkt im Hintergrund gestartet
-S minecraft - Wir geben unserem Screen den Namen minecraft
Den Rest kennt ihr ja bereits von oben.
Wenn pornopaul jetzt ausgeloggt wird, läuft Minecraft immernoch. Wenn man nun auf die Serverkonsole zugreifen möchte, muss man sich einloggen und
eingeben.
Sollte es euch mal dummerweise passieren, dass ihr zwei Screens mit dem selben Namen laufen habt, müsst ihr
eingeben und dann die Zahl vor dem Screennamen bei screen -r eingeben um die entsprechende Konsole zu öffnen.
Jetzt möchten wir den Server alle 24 Stunden neu starten, damit es nicht zu unerwünschten Ausfällen kommt. Dazu nutzen wir crontab.
Wir geben als User pornopaul folgendes ein:
Es sollte sich nun eine Textdatei öffnen, in dieser scrollt ihr bis ganz nach unten. In die unterste Zeile tragt ihr nun folgendes ein:
Dies sorgt dafür, dass um 5 Uhr und 0 Minuten, jeden Tag in jedem Monat, sowie jeden Wochentag, der Minecraftserver den Befehl "stop" übergeben bekommt. Dieser variiert je nach Gameserver. Counter Strike z.B. muss quit übergeben bekommen.
Um den Server nun neu zu starten müssen wir noch eine Zeile eröffnen:
Dies sorgt dafür, dass um 5 Uhr und 1 Minute, jeden Tag usw. der Minecraftserver neu gestartet wird.
Wir schliessen nun den Editor und werden sehen, dass der Server am nächsten Tag einmal neu gestartet wurde. Ausserdem haben wir eine interne Mail erhalten, die uns auf diese Tatsache aufmerksam macht.
Es steht euch natürlich frei ein Shellscript zu schreiben, dass einmal in der Woche diese E-Mails löscht, vielleicht werde ich entsprechenden Code hier veröffentlichen... vielleicht.
Ich hoffe ich konnte euer Leben ein bisschen bereichern und wünsche euch noch einen schönen Morgen/Mittag/Abend
mfG
ich melde mich nochmal mit einem kleinen Linux-Tutorial, für alle die Gameserver auf einer Linuxmaschine betreiben.
Um das folgende Tutorial abarbeiten zu können müsst ihr euren Linuxserver mit folgendem ausgestattet haben:
- [Only registered and activated users can see links. Click Here To Register...]
- [Only registered and activated users can see links. Click Here To Register...]
- [Only registered and activated users can see links. Click Here To Register...]
Eigentlich könnte dieses Tutorial auch ein How-To Crontab benutzen sein, denn nichts anderes möchte ich euch hier, ein wenig stärker auf Gameserver ausgerichtet, zeigen.
Normalerweise ist crontab in den gängigen Linuxdistributionen vorinstalliert, was ihr (falls nicht bereits passiert) nachinstallieren müsst ist screen.
Code:
apt-get install screen
Code:
java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui
Code:
screen -m -d -S minecraft -java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui
screen - wir starten das Programm screen
-m - Auf jeden Fall wird eine neues Session erstellt
-d - Der Screen wird nicht geöffnet, sondern direkt im Hintergrund gestartet
-S minecraft - Wir geben unserem Screen den Namen minecraft
Den Rest kennt ihr ja bereits von oben.
Wenn pornopaul jetzt ausgeloggt wird, läuft Minecraft immernoch. Wenn man nun auf die Serverkonsole zugreifen möchte, muss man sich einloggen und
Code:
screen -r minecraft
Sollte es euch mal dummerweise passieren, dass ihr zwei Screens mit dem selben Namen laufen habt, müsst ihr
Code:
screen -list
Jetzt möchten wir den Server alle 24 Stunden neu starten, damit es nicht zu unerwünschten Ausfällen kommt. Dazu nutzen wir crontab.
Wir geben als User pornopaul folgendes ein:
Code:
crontab -e
Code:
0 5 * * * screen -r minecraft -X stop
Um den Server nun neu zu starten müssen wir noch eine Zeile eröffnen:
Code:
1 5 * * * screen -m -d -S minecraft -java -Xmx1024M -Xms1024M -jar minecraft_server.jar nogui
Wir schliessen nun den Editor und werden sehen, dass der Server am nächsten Tag einmal neu gestartet wurde. Ausserdem haben wir eine interne Mail erhalten, die uns auf diese Tatsache aufmerksam macht.
Es steht euch natürlich frei ein Shellscript zu schreiben, dass einmal in der Woche diese E-Mails löscht, vielleicht werde ich entsprechenden Code hier veröffentlichen... vielleicht.
Ich hoffe ich konnte euer Leben ein bisschen bereichern und wünsche euch noch einen schönen Morgen/Mittag/Abend
mfG