hallo ihr linuxer ;),
ich habe im moment einen rootserver zum testen, ich möchte ihn als gameserver betreiben. folgendes problem:
ich kann den gameserver einwandfrei starten, er läuft auch aber nur bis ich die ssh-session schließe (putty). ich meine mich zu erinnern, von einem solchen problem mal in irgendeinem forum gelesen zu haben. weiss aber nicht genau wie ich mit google danach suchen soll. ich hoffe ihr könnt mir hier helfen.
mfg
master02
Linux 15.036 Themen, 107.107 Beiträge
hoppla, es wäre wohl noch hilfreich welche distri.... also es handelt sich um debian sarge mit 2.4.27 kernel. hoffe ich hab sonst nix vergessen was zur lösung beitragen könnte :(
Na das ist ganz einfach.
Du startest den gameserver aus der ssh-session heraus,
d.h. der server ist dann ein Kindprozess vom ssh.
Beendest du nun den Vaterprozess werden auch alle darunter
laufenden Prozesse beendet.
es gibt mehrere lösungsansätze für dein problem:
ansatz 1: schau mal, ob das programm als daemon gestartet werden kann. eventuell gibt es einen kommandozeilenparameter dafür. ein daemonprozess ist von der konsole abgelöst, d.h. nach schliessen der ssh-sitzung (was die aktuell drin laufende konsole beendet), läuft das programm im hintergrund weiter
ansatz 2: versuch ein init-skript dafür zu schreiben. das kannst du danach mit
/etc/init.d/mein-gameserver start
starten.
ansatz 3: installiere screen, starte eine neue screen-session mit
screen -S gameserver-session
und starte darin das gameserver-programm. anschliessend löst du die screen-session durch drücken von [ctrl]+[a] und [d]
anschliessend kann die ssh-verbindung getrennt werden und screen läuft im hintergrund weiter.
du kannst dich mit
screen -x gameserver-session
wieder in die screen-session begeben.
ich empfehle aber auf jeden fall noch eine kurze lektüre von man screen
man nohup
HTH, Z.
ich hab schon festgestellt, dass das leider nicht immer funktioniert :-(
vielen dank für eure mühe, mit dem tip von zaphod hats geklappt.
thx :)
achja, kennt vielleicht jemand ein gutes debian tutorial, wo auch alle grundsätzlichen befehle mal kurz aufgelistet sind, falls möglich auf deutsch, englisch geht aber auch.
mfg
master02
http://www.debian.de/doc/#manuals
Linux-Anwender-Handbuch:
http://www.linux-ag.de/linux/LHB/
ganz einfach
einloggen per ssh
screen starten mit
screen
gameserver starten im screen
screen detachen mit STRG+A+D
ssh seesion beenden.
Beim nächsten ssh login einfach in den screen gehen mit
screen -x
Das ist alles.
scroll mal ein bisschen nach oben :-)
genau sowas hab ich gesucht. dankeschön!
mfg
master02