Problem mit HLTV Script

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von Hoelsch, 12.10.2006.

  1. #1 Hoelsch, 12.10.2006
    Hoelsch

    Hoelsch Jungspund

    Dabei seit:
    04.09.2006
    Beiträge:
    18
    Zustimmungen:
    0
    Also folgendes:
    Ich hab ein hlds Startscript. Das ist alles schön und gut. So. Das hab ich nun umgeschrieben für HLTV. Dachte ich auf jeden Fall. Aber wenn ich das dann per ./cs5 start (so heißt die Datei) ausführe, kommt, dass er den startet, aber wenn ich dann per screen reingehen will, sagt er mir, dass kein screen vorhanden ist. Und der HLTV Server wird auch nicht gestartet (logischerweise).
    Hier mal das Script:
    Code:
    #!/bin/sh
    #
    # Start the Counter-Strike dedicated server.
    #
    # AUTHORS :
    #
    # Julien Escario ( pandemik@azilog.net )
    # &
    # Cedric Rochat ( crochat@younics.org )
    #
    # ===========================================
    #
    # What you need:
    #
    # Linux :)
    # awk
    # screen
    # the hlds_l & cstrike-files
    # 
    # How to use:
    # 
    # Edit the DIR-Var to fit your system (just contains the path to the dir that contains hlds_run)
    # Edit the PARAMS-Var to fit your needs 
    # - standard is startup as LAN-server
    #
    # When this is done, copy the file to /etc/rc.d/init.d (or whereever your system stores the
    # scripts for starting the services
    # Now you can link the script to your runlevel-dir, here's an example for runlevel 3:
    # ln -s /etc/rc.d/init.d/hlds /etc/rc.d/rc3.d/S90hlds
    # ln -s /etc/rc.d/init.d/hlds /etc/rc.d/rc3.d/K50hlds
    #
    # Or use it manualy like: 
    # /etc/rc.d/init.d/hlds start 
    # /etc/rc.d/init.d/hlds stop 
    #
    # How to see the server-console:
    #
    # Just type in: screen -r cstrike 
    # More info about screen can be found by typing "man screen" or using this nice link
    # http://server.counter-strike.net/help/linuxscreen.html
    #
    # If you don't want to start the server as root you have to change this:
    # add the var CS_USER and uncomment it
    # change the lines at the "start-block"
    # 
    # You must be logged in as this user to re-attach the screen!
    #
    # DOC by jwm (jwm@counter-strike.de)
    
    clear
    
    # Edit and uncomment it to run the server as non-root
    # CS_USER="jwm"
    
    PATH=/bin:/usr/bin:/sbin:/usr/sbin
    
    # # DON'T FORGET TO CHANGE THE PATH TO YOUR NEEDS!
    DIR=/home/server/server1
    
    DAEMON=$DIR/hltv
    
    
    # LAN-server:
    #PARAMS="-game cstrike -nomaster -insecure +sv_lan 1 +maxplayers 16 +map de_dust"
    # Internet-server:
    PARAMS="+connect 85.XX.XXX.XXX:27010 -port 27025 +exec hltv.cfg"
    
    NAME=hltv
    DESC="[nCSo] HLTV"
    
    case "$1" in
     start)
        echo "Starting $DESC: $NAME"
           if [ -e $DIR ];
              then
    	      cd $DIR export LD_LIBRARY_PATH=$DIR
    	      #  Change the lines for running as non-root!
    	      #  su $CS_USER - -c "screen -d -m -S $NAME $DAEMON $PARAMS"
    	          screen -A -m -d -S $NAME export LD_LIBRARY_PATH=$DIR $DAEMON $PARAMS
    		     else echo "No such directory: $DIR!"
    		        fi
    			   ;;
    
    			    stop)
    			       if [[ `screen -ls |grep $NAME` ]]
    			          then
    				         echo -n "Stopping $DESC: $NAME"
    					        kill `screen -ls |grep $NAME |awk -F . '{print $1}'|awk '{print $1}'`
    						       echo " ... done."
    						          else
    							         echo "Coulnd't find a running $DESC"
    								    fi
    								       ;;
    
    								        restart)
    									   if [[ `screen -ls |grep $NAME` ]]
    									      then
    									             echo -n "Stopping $DESC: $NAME"
    										            kill `screen -ls |grep $NAME |awk -F . '{print $1}'|awk '{print $1}'`
    											           echo " ... done."
    												      else
    												             echo "Coulnd't find a running $DESC"
    													        fi
    														   
    														      echo -n "Starting $DESC: $NAME"
    														         cd $DIR
    															    screen -d -m -S $NAME $DAEMON $PARAMS
    															       echo " ... done."
    															          ;;
    																   
    																    status)
    																       # Check whether there's a "hlds" process
    																          # if "checkproc" is installed, you can use this:
    																	     # checkproc $DIR/hlds_run && echo "CS-Server RUNNING" || echo "CS-Server NOT RUNNING"
    																	        # (thx to commander)
    																		   ps aux | grep -v grep | grep hlds_r > /dev/null
    																		      CHECK=$?
    																		         [ $CHECK -eq 0 ] && echo "HLDS is UP" || echo "HLDS is DOWN"
    																			    ;; 
    																			     
    																			      *)
    																			         echo "Usage: $0 {start|stop|status|restart}"
    																				    exit 1
    																				       ;;
    																				       esac
    
    																				       exit 0
    
    
    Ich verstehe das nicht. Denn wenn ich den Befehl (./hltv +connect 85.XX.XXX.XXX:27010 -port 27025 +exec hltv.cfg) ohne screen ausführe funktioniert alles wunderbar. Was mache ich da falsch?

    Viele Dank schon mal!

    MfG Hoelsch:hilfe2: :hilfe2:
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. theton

    theton Bitmuncher

    Dabei seit:
    27.05.2004
    Beiträge:
    4.820
    Zustimmungen:
    0
    Ort:
    Berlin, Germany
    Was bekommst du denn, wenn du die Variablen im Script für den screen-Befehl austauscht und diesen mal einzeln ausführst?
     
  4. #3 Hoelsch, 13.10.2006
    Hoelsch

    Hoelsch Jungspund

    Dabei seit:
    04.09.2006
    Beiträge:
    18
    Zustimmungen:
    0
    inwiefern austauschen? gegen welche sollte ich die denn tauschen? also so mit den params bekomme ich, wenn ich das so ausführe:
    Einfach garkeine Meldung. Und wenn ich es ohne den screen Befehl ausführe startet der Server normal.

    Achja: Noch eine Frage...Vielleicht liegt es auch daran. Ich muss, bevor ich den ganzen Befehl ausführe erst noch den Befehl
    ausführen. Den habe ich aber ja auch oben im Script eingebaut. Oder ist der da falsch?

    Vielen Dank schon mal.

    MfG Hoelsch
     
  5. theton

    theton Bitmuncher

    Dabei seit:
    27.05.2004
    Beiträge:
    4.820
    Zustimmungen:
    0
    Ort:
    Berlin, Germany
    Wenn du schon 2 Befehle zusammen nutzt, solltest du diese auch richtig miteinander verknüpfen.
    Code:
    export blabla [b]&&[/b] meinbefehl
    Dass du bei dem Screen-Befehl keinen Output bekommst, ist völlig normal. Du wirst schon mit
    Code:
    screen -list
    nachschauen müssen, ob ein Screen gestartet wurde.
    Wenn er nicht gestartet wurde, liegt dein Problem mit ziemlicher Sicherheit in der Syntax des Befehls. Dein Skript führt ja nunmal nicht 'hltv blabla' aus, sondern 'screen -A -m -d -S hltv blabla' und somit musst du diesen Befehl testen, denn viele Befehle verhalten sich komplett anders als gewohnt, wenn man sie direkt mit screen starten will.
     
  6. #5 Hoelsch, 13.10.2006
    Hoelsch

    Hoelsch Jungspund

    Dabei seit:
    04.09.2006
    Beiträge:
    18
    Zustimmungen:
    0
    also müsste der befehl dann so lauten?:
    Und bei screen -list wird er nicht gelistet.

    Wie gesagt: Ich hatte den ja einzeln getestet mit screen blabla. Da funktioniert er auch nicht...Nur ohne screen klappt alles :(

    Aber ich möchte doch mein schönes start, stop, restart und status script behalten :(

    kann grad auch nich testen, weil ich auf arbeit bin und nur windows rechner um mich rum hab *panik*
     
  7. theton

    theton Bitmuncher

    Dabei seit:
    27.05.2004
    Beiträge:
    4.820
    Zustimmungen:
    0
    Ort:
    Berlin, Germany
    Kannst du doch behalten. Warum muss hltv aber unbedingt im screen starten? Kannst du den nicht einfach im Hintergrund laufen lassen?
     
  8. #7 Hoelsch, 13.10.2006
    Hoelsch

    Hoelsch Jungspund

    Dabei seit:
    04.09.2006
    Beiträge:
    18
    Zustimmungen:
    0
    mit screen finde ich aber schöner und übersichtlicher, da alle server mit screen laufen....mal abgesehen davon weiß ich ehrlich gesagt nicht wirklich wie das geht, den einfach in den hintergrund zu packen :(
     
  9. theton

    theton Bitmuncher

    Dabei seit:
    27.05.2004
    Beiträge:
    4.820
    Zustimmungen:
    0
    Ort:
    Berlin, Germany
  10. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  11. #9 Hoelsch, 16.10.2006
    Hoelsch

    Hoelsch Jungspund

    Dabei seit:
    04.09.2006
    Beiträge:
    18
    Zustimmungen:
    0
    problem hat sich geklärt.

    trotzdem vielen dank für die hilfe.

    mfg

    hoelsch
     
  12. #10 Schlaubi_fi.de, 17.10.2006
    Schlaubi_fi.de

    Schlaubi_fi.de Mac OS X User

    Dabei seit:
    22.12.2004
    Beiträge:
    304
    Zustimmungen:
    0
    Wo lag das Problem?
     
Thema:

Problem mit HLTV Script

Die Seite wird geladen...

Problem mit HLTV Script - Ähnliche Themen

  1. Virtualboxproblem

    Virtualboxproblem: Hallo Folgnedes Problem: Ich kann ohne Probleme In Debian-Sid, 64Bit und virtualbox-dkms Unixoide installieren, wenn es sich um eine...
  2. grub-pc Probleme bei upgrade

    grub-pc Probleme bei upgrade: Hallo, ich habe beim dist-upgrade folgendes Problem: ---------- Nach dieser Operation werden 0 B Plattenplatz zusätzlich benutzt. Trigger für...
  3. Problem bei apt-get upgrade (Kali 2.0)

    Problem bei apt-get upgrade (Kali 2.0): Hi, seit paar Tagen habe ich einige Probs. Dachte es sei mal an der Zeit für ein Update und nun tauchen da einige Fehler auf: Es müssen noch 0 B...
  4. Probleme mit YUM

    Probleme mit YUM: Hallo, ich habe CentOs 7 als Dualboot mit Windows 7 auf einen Dell Latitude E5510 installiert. Dies hat soweit auch alles geklappt. Leider habe...
  5. Problem mit Win-Zugriff auf SAMBA

    Problem mit Win-Zugriff auf SAMBA: Hallo rundherum, vielleicht hat jemand eine Idee... Habe jetzt schon 1 1/2 Tage damit verbraten und den Fehler nicht gefunden. Problem:...