hardexit
Goto Top

Schroot einen screen öffnen

Also ich habe nach folgender Anleitung einen Arma3 Server installiert, nun möchte ich den Server natürlich am laufen halten ohne die Konsole offen zu haben, also wollte ich einfach einen screen nutzen.
ich gehe wie folgt vor:

  1. schroot -c trusty_i386
  2. ./arma.sh start
  3. Putty schließen

Aber sobald ich Putty schließe oder das schroot mit STRG+D schließe schließt sich auch der screen, nun weiß ich gerade nicht wie ich das verhindern kann.

Vielen Dank schon mal im voraus für eure Zeit


arma.sh:
#!/bin/sh

DIR="/home/arma3/server"  
NAME="arma3server"  

case "$1" in  
	test)
		cd $DIR
		./arma3server -connect=78.47.47.182 -port=2302 -BEPath=battleye -config=server.cfg -cfg=basic.cfg -noSound -mod=@life_server\;@extDB
	;;
	start)
		cd $DIR
		screen -dmS $NAME ./arma3server -connect=78.47.47.182 -port=2302 -BEPath=battleye -config=server.cfg -cfg=basic.cfg -noSound -mod=@life_server\;@extDB
		echo "The server is started "  
	;;
	stop)
		cd $DIR
		screen -r "arma3server" -p 0 -X quit  
	;;
	restart)
		$0 stop && $0 start || exit 1
	;;
	status)
		if [[ `screen -ls |grep "$NAME"` ]]; then  
			echo "Server is online"  
		else
			echo "Server seems to be offline"  
		fi
	;;
	login)
		screen -r "$NAME"  
	;;
	update)
		~/Steam/steamcmd.sh +runscript ~/Steam/a3update.txt
	;;

	*)
		echo "Usage: ${0} {test|start|stop|restart|status|login|update}"  
		exit 2
esac
exit 0

Content-Key: 264148

Url: https://administrator.de/contentid/264148

Ausgedruckt am: 28.03.2024 um 20:03 Uhr

Mitglied: aqui
aqui 21.02.2015 aktualisiert um 16:07:46 Uhr
Goto Top
Wenn du mit Screen arbeitest wäre:
#!/bin/bash
#
screen -d -m ./arma.sh 
richtig. Mit screen -ls kannst du dann sehen obs rennt.
Mitglied: Lochkartenstanzer
Lochkartenstanzer 21.02.2015 um 16:29:00 Uhr
Goto Top
Zitat von @HardExit:

also wollte ich einfach einen screen nutzen.

Dann soltest Du arma.sh auch mit screen starten, wie aqui es schon dargelegt hat.

lks
Mitglied: HardExit
HardExit 21.02.2015 aktualisiert um 17:49:28 Uhr
Goto Top
den screen hab ich ja in der start.sh, der screen und der server starten ja, nur eben schließt sich wenn ich putty schließe dann auch der schroot schroot mit
Mitglied: HardExit
HardExit 21.02.2015 um 17:49:04 Uhr
Goto Top
ich starte ja im startscript mit screen
nur eben schließt sich wenn ich putty schließe dann auch der schroot schroot mit
Mitglied: Lochkartenstanzer
Lochkartenstanzer 21.02.2015 um 17:51:19 Uhr
Goto Top
Zitat von @HardExit:

ich starte ja im startscript mit screen
nur eben schließt sich wenn ich putty schließe dann auch der schroot schroot mit

Natürlich schließt sich der schroot, weill der ja nicht im screen läuft.

lks
Mitglied: HardExit
HardExit 21.02.2015 um 18:16:33 Uhr
Goto Top
Zitat von @Lochkartenstanzer:

> Zitat von @HardExit:
>
> ich starte ja im startscript mit screen
> nur eben schließt sich wenn ich putty schließe dann auch der schroot schroot mit

Natürlich schließt sich der schroot, weill der ja nicht im screen läuft.

lks

und wie starte ich den schroot im screen?
Mitglied: Lochkartenstanzer
Lochkartenstanzer 21.02.2015 um 19:06:09 Uhr
Goto Top
Zitat von @HardExit:

und wie starte ich den schroot im screen?

screen schroot -c trusty_i386
Mitglied: HardExit
HardExit 21.02.2015 um 19:30:55 Uhr
Goto Top
kann ich das nicht so auch ins startscript schreiben?
cd $DIR
screen schroot -c trusty_i386 && ./arma3server -connect=78.47.47.182 -port=2302 -BEPath=battleye -config=server.cfg -cfg=basic.cfg -noSound -mod=@life_server\;@extDB
Mitglied: Lochkartenstanzer
Lochkartenstanzer 21.02.2015, aktualisiert am 22.02.2015 um 15:21:24 Uhr
Goto Top
Zitat von @HardExit:

kann ich das nicht so auch ins startscript schreiben?
cd $DIR
screen schroot -c trusty_i386 && ./arma3server -connect=78.47.47.182 -port=2302 -BEPath=battleye -config=server.cfg
-cfg=basic.cfg -noSound -mod=@life_server\;@extDB

Mach eine batchdatei.

Schreib da alles rein, was im screen laufen soll und starte das dann mit

screen ./batchdatei-fuer-screen.sh

lks
Mitglied: HardExit
HardExit 21.02.2015 um 21:00:10 Uhr
Goto Top
So hab das ganze jetzt so geschrieben, weiß jemand wie ich das starten des Server in einen Befehl rein bringe?
#!/bin/sh

DIR="/home/arma3/server"  
NAME="arma3server"  
STARTPARA="./arma3server -connect=78.47.47.182 -port=2302 -BEPath=battleye -config=server.cfg -cfg=basic.cfg -noSound -mod=@life_server\;@extDB"  

case "$1" in  
	test)
		cd $DIR
		./arma3server -connect=78.47.47.182 -port=2302 -BEPath=battleye -config=server.cfg -cfg=basic.cfg -noSound -mod=@life_server\;@extDB
	;;
	screen)
		if [[ `screen -ls |grep "$NAME"` ]]; then  
			echo "screen ist online starte ihn nicht 2 mal"  
		else
			screen -S $NAME schroot -c trusty_i386
		fi
		exit 1
	;;
	start)
		if [[ `screen -ls |grep "$NAME"` ]]; then  
			cd $DIR
			./arma3server -connect=78.47.47.182 -port=2302 -BEPath=battleye -config=server.cfg -cfg=basic.cfg -noSound -mod=@life_server\;@extDB
		else
			echo "server kann nicht ohne screen gestartet werden"  
		fi
		exit 1
	;;
	login)
		screen -r "$NAME"  
	;;
	update)
		~/Steam/steamcmd.sh +runscript ~/Steam/a3update.txt
	;;

	*)
		echo "Usage: ${0} {test|screen|start|login|update}"  
		exit 2
esac
exit 0
Mitglied: aqui
aqui 22.02.2015 um 14:47:02 Uhr
Goto Top
screen -d -m ./arma.sh
Mitglied: HardExit
HardExit 19.03.2015 um 08:59:14 Uhr
Goto Top
ich bräuchte jetzt noch einen restart cron, nur weiß ich nicht wie ich den schreibe damit der in dem Screen arma 3 beendet da arma3 keinen quit befehl hat sondern nur per control+c gekillt wird.
wie kann ich das denn meinem cron beibringen?
Mitglied: HardExit
HardExit 19.03.2015 um 09:02:38 Uhr
Goto Top
mein ziel ist immer noch den screen command im startscript zu haben und nicht das startscript per screen auszuführen