Sponsor-Board.de
Thema geschlossen  Thema schreiben 

Screen wiederholen

Verfasser Nachricht

Beiträge: 1.219
Bewertung: 63
Registriert seit: Sep 2010
Status: offline


Beitrag: #1
Screen wiederholen

Hey,

Ich habe mehrere Gameserver mit screen laufen, seitdem ich das neue Startscript benutze um die Gameserver täglich neuzustarten ist mir aufgefallen das bei: screen -r keiner der Laufenden Session angezeigt wird. Weder als Root noch als unpreviligierter User. Damit erklärt sich der fehler warum der Restart nicht funktioniert. Jemand rat wie das behebe?

Teklab ist aber trotzdem in der lage den Prozess zu töten weshalb auch immer.

Code:

PHP-Code:
# replace <newuser> with the user you created above
SRCDS_USER="test"

# Do not change this path
PATH=/bin:/usr/bin:/sbin:/usr/sbin

# The path to the game you want to host. example = /home/newuser/dod
DIR=/home/.........
DAEMON=$DIR/srcds_run

# Change all PARAMS to your needs.
PARAMS="-console -game left4dead2 +map c1m1_hotel +maxplayers 8 "
NAME=L4D1
DESC
="Left4Dead2"

case "$1" in
start
)
echo 
"Starting $DESC$NAME"
if [ -e $DIR ]; then
cd $DIR
su $SRCDS_USER 
--"screen -d -m -S $NAME $DAEMON $PARAMS"
else
echo 
"No such directory: $DIR!"
fi
;;

stop)
if 
screen -ls |grep $NAMEthen
echo -"Stopping $DESC$NAME"
kill `screen -ls |grep $NAME |awk -F . '{print $1}'|awk '{print $1}'`
echo 
" ... done."
else
echo 
"Couldn't find a running $DESC"
fi
;;

restart)
if 
screen -ls |grep $NAMEthen
echo -"Stopping $DESC$NAME"
kill `screen -ls |grep $NAME |awk -F . '{print $1}'|awk '{print $1}'`
echo 
" ... done."
else
echo 
"Couldn't find a running $DESC"
fi
echo -"Starting $DESC$NAME"
cd $DIR
screen 
---S $NAME $DAEMON $PARAMS
echo " ... done."
;;

status)
# Check whether there's a "srcds" process
ps aux grep -v grep grep srcds_r > /dev/null
CHECK
=$?
$CHECK -eq 0 ] && echo "SRCDS is UP" || echo "SRCDS is DOWN"
;;

*)
echo 
"Usage: $0 {start|stop|status|restart}"

exit 1
;;
esac

exit 


This is Linux land. In silent nights you can hear the Windows machines rebooting.

Dieser Beitrag wurde zuletzt bearbeitet: 18.08.2012 13:00 von Neo.

18.08.2012 12:58
 
Alle Beiträge dieses Benutzers finden

Beiträge: 108
Bewertung: 6
Registriert seit: Apr 2012
Status: offline


Beitrag: #2
RE: Screen wiederholen

Naja, das Problem liegt ja dadrin, dass ein Prozess von Teklab vorhanden ist aber wiederum doch nicht.

Schon mal Logs nachgeschaut? Den Restart Befehl manuell mal ausgeführt in der Console?

Er kann ja keinen Prozess erstellen, der bereits vorhanden ist.

Genauso verwirrt mich das:

PHP-Code:
# Change all PARAMS to your needs.
PARAMS="-console -game left4dead2 +map c1m1_hotel +maxplayers 8 "
NAME=L4D1
DESC
="Left4Dead2" 


Warum DESC in Anführungsstrichen und NAME nicht?

Wenn Start und Stop manuell via Console funktionieren, dann müsst es eigentlich auch tun. Eek

MfG


18.08.2012 14:03
 
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden

Beiträge: 971
Bewertung: 60
Registriert seit: Oct 2010
Status: offline


Beitrag: #3
RE: Screen wiederholen

Du kannst screens nur dann mit fremden Benutzern öffnen, wenn die Screens öffentlich sind. Dafür gibt es einen Parameter, den ich zugegebenermaßen gerade nicht auswendig weiß. Teklab benutzt einen User, mit dem du dich einloggen müsstest, damit du den Screen siehst. Du kannst auf dem Server ja mal ein
ps aux | grep L4D -i
ausführen, da siehst du in der ersten Spalte den Benutzer unter dem das ausgeführt wird.
Außerdem benutzt Teklab ja hier kein "screen -r", sondern einen "kill" Befehl.
kill `screen -ls |grep $NAME |awk -F . '{print $1}'|awk '{print $1}'`
Wofür genau die Variablen stehen, weiß ich jetzt nicht, aber wenn du den ps aux Befehl von oben nimmst und dir die PID raussuchst, kannst du den auch per
kill <PID>
schließen.

Bei screen -r kommen nur Screens, die du unter diesem User gestartet hast.

Lg Madmatti

Neo schrieb:
Hey,

Ich habe mehrere Gameserver mit screen laufen, seitdem ich das neue Startscript benutze um die Gameserver täglich neuzustarten ist mir aufgefallen das bei: screen -r keiner der Laufenden Session angezeigt wird. Weder als Root noch als unpreviligierter User. Damit erklärt sich der fehler warum der Restart nicht funktioniert. Jemand rat wie das behebe?

Teklab ist aber trotzdem in der lage den Prozess zu töten weshalb auch immer.

Code:

PHP-Code:
# replace <newuser> with the user you created above
SRCDS_USER="test"

# Do not change this path
PATH=/bin:/usr/bin:/sbin:/usr/sbin

# The path to the game you want to host. example = /home/newuser/dod
DIR=/home/.........
DAEMON=$DIR/srcds_run

# Change all PARAMS to your needs.
PARAMS="-console -game left4dead2 +map c1m1_hotel +maxplayers 8 "
NAME=L4D1
DESC
="Left4Dead2"

case "$1" in
start
)
echo 
"Starting $DESC$NAME"
if [ -e $DIR ]; then
cd $DIR
su $SRCDS_USER 
--"screen -d -m -S $NAME $DAEMON $PARAMS"
else
echo 
"No such directory: $DIR!"
fi
;;

stop)
if 
screen -ls |grep $NAMEthen
echo -"Stopping $DESC$NAME"
kill `screen -ls |grep $NAME |awk -F . '{print $1}'|awk '{print $1}'`
echo 
" ... done."
else
echo 
"Couldn't find a running $DESC"
fi
;;

restart)
if 
screen -ls |grep $NAMEthen
echo -"Stopping $DESC$NAME"
kill `screen -ls |grep $NAME |awk -F . '{print $1}'|awk '{print $1}'`
echo 
" ... done."
else
echo 
"Couldn't find a running $DESC"
fi
echo -"Starting $DESC$NAME"
cd $DIR
screen 
---S $NAME $DAEMON $PARAMS
echo " ... done."
;;

status)
# Check whether there's a "srcds" process
ps aux grep -v grep grep srcds_r > /dev/null
CHECK
=$?
$CHECK -eq 0 ] && echo "SRCDS is UP" || echo "SRCDS is DOWN"
;;

*)
echo 
"Usage: $0 {start|stop|status|restart}"

exit 1
;;
esac

exit 


Homepage: [Link: Registrierung erforderlich] - Haufenweise Tutorials zu Teamspeak und Linux, ebenfalls Let's Plays im Hardcore Modus (nur 1 Leben)

YouTube Kanal: [Link: Registrierung erforderlich]

[Link: Registrierung erforderlich]

18.08.2012 14:55
 
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Thema geschlossen  Thema schreiben 

Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Wie heisst dieser Screen ? Zargor 1 1.401 19.08.2015 22:09
Letzter Beitrag: GERIskillzZz
  Twitch Split screen italian-power 0 1.672 16.08.2015 00:41
Letzter Beitrag: italian-power
  Linux "screen" Hilfe Artiik 11 3.122 22.01.2015 21:14
Letzter Beitrag: Patrick
  Minecraft Server Linux Screen is terminating DarkBlue1231 10 5.257 30.03.2013 13:52
Letzter Beitrag: DarkBlue1231
  Befehl screen Bonyamin 5 1.398 20.06.2012 20:03
Letzter Beitrag: Patrick

 Druckversion anzeigen
 Thema einem Freund senden
 Thema abonnieren
 Thema zu den Favoriten hinzufügen

Sponsor-Board.de

Community
Über uns
Partner
Powered by Mybb: Copyright 2002-2024 by MyBB Group - Deutsche-Übersetzung von Mybb.de
 
© 2007-2024 Sponsor-Board.de - Hosted by OVH

Willkommen auf SB!   Sie benötigen ein Sponsoring?   1. Anmelden   2. Sponsoring-Anfrage erstellen   3. Nachrichten von Sponsoren erhalten   Kostenlos!   Jetzt registrieren