hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.06.16. 10:23



Jelenlévő felhasználók

Jelenleg 485 felhasználó van jelen :: 1 regisztrált, 1 rejtett és 483 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Google [Bot] az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 8 hozzászólás ] 
Szerző Üzenet
HozzászólásElküldve: 2013.05.13. 22:18 
Offline
Jómunkásember
Avatar

Csatlakozott: 2013.01.15. 19:04
Hozzászólások: 407
Megköszönt másnak: 17 alkalommal
Megköszönték neki: 176 alkalommal
Sziasztok!

A hlds_run fileben melyik részt kell módosítani, hogy a szerver leállás esetén egy idő múlva autómatikussan újraindúljon?


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2013.05.14. 13:38 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2011.09.18. 13:01
Hozzászólások: 4271
Megköszönt másnak: 55 alkalommal
Megköszönték neki: 514 alkalommal
demon írta:
Sziasztok!

A hlds_run fileben melyik részt kell módosítani, hogy a szerver leállás esetén egy idő múlva autómatikussan újraindúljon?

Inditosorba kell szerkezteni ugytudom (Valami -debug ot kell)

_________________
Idk. Csak ugy funbooo.
Kép


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2013.05.14. 14:19 
Offline
Jómunkásember
Avatar

Csatlakozott: 2013.01.15. 19:04
Hozzászólások: 407
Megköszönt másnak: 17 alkalommal
Megköszönték neki: 176 alkalommal
DeteCT0R írta:
demon írta:
Sziasztok!

A hlds_run fileben melyik részt kell módosítani, hogy a szerver leállás esetén egy idő múlva autómatikussan újraindúljon?

Inditosorba kell szerkezteni ugytudom (Valami -debug ot kell)


Igen erről én is olvastam de nem tudom, hogy mit kell állítani debug résznél.


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2013.05.14. 14:35 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2011.09.18. 13:01
Hozzászólások: 4271
Megköszönt másnak: 55 alkalommal
Megköszönték neki: 514 alkalommal
demon írta:
DeteCT0R írta:
demon írta:
Sziasztok!

A hlds_run fileben melyik részt kell módosítani, hogy a szerver leállás esetén egy idő múlva autómatikussan újraindúljon?

Inditosorba kell szerkezteni ugytudom (Valami -debug ot kell)


Igen erről én is olvastam de nem tudom, hogy mit kell állítani debug résznél.

csak siman baszd a vegere -debug vagy +debug nemtudom mar xd

_________________
Idk. Csak ugy funbooo.
Kép


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2013.05.14. 15:01 
Offline
Jómunkásember
Avatar

Csatlakozott: 2013.01.15. 19:04
Hozzászólások: 407
Megköszönt másnak: 17 alkalommal
Megköszönték neki: 176 alkalommal
Idézet:
csak siman baszd a vegere -debug vagy +debug nemtudom mar xd


De minek a végére?


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2013.05.14. 15:02 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2012.10.09. 13:48
Hozzászólások: 1439
Megköszönték neki: 174 alkalommal
demon írta:
Idézet:
csak siman baszd a vegere -debug vagy +debug nemtudom mar xd


De minek a végére?

Paraméterezni kell. Tehát ha meg van az indító script, vagy manuálisan indítod, oda kell beírni a -debugot.

_________________
Minden jót! :)


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2013.05.14. 19:39 
Offline
Jómunkásember
Avatar

Csatlakozott: 2013.01.15. 19:04
Hozzászólások: 407
Megköszönt másnak: 17 alkalommal
Megköszönték neki: 176 alkalommal
Itt a hlds_run tartalmi valaki írja bele amit kell

Kód:
#!/bin/sh
#
#       Copyright (c) 2002, Valve LLC. All rights reserved.
#
#   a wrapper script for the main hl dedicated server binary.
#   Performs auto-restarting of the server on crash. You can
#   extend this to log crashes and more.
#

# setup the libraries, local dir first!
export LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH"

init() {
   # Initialises the various variables
   # Set up the defaults
   GAME="valve"
   DEBUG=0
   RESTART="yes"
   HL=./hlds_i486
   HL_DETECT=1
   TIMEOUT=10 # time to wait after a crash (in seconds)
   CRASH_DEBUG_MSG="email debug.log to linux@valvesoftware.com"
   GDB="gdb" # the gdb binary to run
   DEBUG_LOG="debug.log"
   PID_FILE=""
   STEAM=""
   STEAMERR=""
   SIGINT_ACTION="quit 0" # exit normally on sig int
   NO_TRAP=0
   AUTO_UPDATE=""
   BETA_VERSION=""
   PARAMS=$*

   # Remove any old default pid files
   # Cant do this as they may be still running
   #rm -f hlds.*.pid

   # use the $FORCE environment variable if its set
   if test -n "$FORCE" ; then
      # Note: command line -binary will override this
      HL=$FORCE
      HL_DETECT=0
   fi

   while test $# -gt 0; do
      case "$1" in
      "-game")
         GAME="$2"
         shift ;;
      "-debug")
         DEBUG=1
         # Ensure that PID_FILE is set
         if test -z "$PID_FILE"; then
            PID_FILE="hlds.$$.pid"
         fi ;;
      "-norestart")
         RESTART="" ;;
      "-pidfile")
         PID_FILE="$2"
         shift ;;
      "-binary")
         HL="$2"
         HL_DETECT=0
         shift ;;
      "-timeout")
         TIMEOUT="$2"
         shift ;;
      "-gdb")
         GDB="$2"
         shift ;;
      "-debuglog")
         DEBUG_LOG="$2"
         shift ;;
      "-autoupdate")
         AUTO_UPDATE="yes"
         STEAM="./steam"
         RESTART="yes" ;;
      "-steamerr")
         STEAMERR=1 ;;
      "-ignoresigint")
         SIGINT_ACTION="" ;;
      "-notrap")
         NO_TRAP=1 ;;
      "-beta")
         BETA_VERSION="$2"
         shift ;;
      "-help")
         # quit with syntax
         quit 2
         ;;
      esac
      shift
   done

   # Ensure we have a game specified
   if test -z "$GAME"; then
      echo "Unable to determine game type from command line."
      quit 1
   elif test ! -d "$GAME"; then
      echo "Invalid game type '$GAME' sepecified."
      quit 1
   fi

   if test 0 -eq "$NO_TRAP"; then
      # Set up the int handler
      # N.B. Dont use SIGINT symbolic value
      #  as its just INT under ksh
      trap "$SIGINT_ACTION" 2
   fi

   # Only detect the CPU if it hasnt been set with
   # either environment or command line
   if test "$HL_DETECT" -eq 1; then
      detectcpu
   fi

   if test ! -f "$HL"; then
      echo "Half-life binary '$HL' not found, exiting"
      quit 1
   elif test ! -x "$HL"; then
      # Could try chmod but dont know what we will be
      # chmoding so just fail.
      echo "Half-life binary '$HL' not executable, exiting"
      quit 1
   fi

   # Setup debugging
   if test "$DEBUG" -eq 1; then
      #turn on core dumps :) (if possible)
      echo "Enabling debug mode"
      if test "`ulimit -c`" -eq 0 ; then
         ulimit -c 2000
      fi
      GDB_TEST=`$GDB -v`
      if test -z "$GDB_TEST"; then
         echo "Please install gdb first."
         echo "goto http://www.gnu.org/software/gdb/ "
         DEBUG=0 # turn off debugging cause gdb isn't installed
      fi
   fi

   PID_IN_PARAMS="`echo $PARAMS | grep -e -pidfile`"

   if test -z "$PID_IN_PARAMS" && test -n "$PID_FILE"; then
      HL_CMD="$HL $PARAMS -pidfile $PID_FILE"
   else
      HL_CMD="$HL $PARAMS"
   fi
}

syntax () {
   # Prints script syntax

   echo "Syntax:"
   echo "$0 [-game <game>] [-debug] [-norestart] [-pidfile]"
   echo "   [-binary [hlds_i486|hlds_i686|hlds_amd]"
   echo "   [-timeout <number>] [-gdb <gdb>] [-autoupdate]"
   echo "   [-steamerr] [-ignoresigint] [-beta <version>]"
   echo "  [-debuglog <logname>]"
   echo "Params:"
   echo "-game <game>           Specifies the <game> to run."
   echo "-debug                 Run debugging on failed servers if possible."
   echo "-debuglog <logname>   Log debug output to this file."
   echo "-norestart             Don't attempt to restart failed servers."
   echo "-pidfile <pidfile>     Use the specified <pidfile> to store the server pid."
   echo "-binary <binary>       Use the specified binary ( no auto detection )."
   echo "-timeout <number>      Sleep for <number> seconds before restarting"
   echo "         a failed server."
   echo "-gdb <gdb>             Use <dbg> as the debugger of failed servers."
   echo "-steamerr             Quit on steam update failure."
   echo "-beta <version>      Make use of a beta version of this server from Steam"
   echo "-ignoresigint          Ignore signal INT ( prevents CTRL+C quitting"
   echo "         the script )."
   echo "-notrap                Don't use trap. This prevents automatic"
   echo "         removal of old lock files."
   echo ""
   echo "Note: All parameters specified as passed through to the server"
   echo "including any not listed."
}

debugcore () {
   # Debugs any core file if DEBUG is set and
   # the exitcode is none 0

   exitcode=$1

   if test $exitcode -ne 0; then
      if test -n "$DEBUG" ; then
         echo "bt" > debug.cmds;
         echo "info locals" >> debug.cmds;
         echo "info sharedlibrary" >> debug.cmds
         echo "info frame" >> debug.cmds;  # works, but gives an error... must be last
         echo "----------------------------------------------" >> $DEBUG_LOG
         echo "CRASH: `date`" >> $DEBUG_LOG
         echo "Start Line: $HL_CMD" >> $DEBUG_LOG

         # check to see if a core was dumped
         if test -f core ; then
            CORE="core"
         elif test -f core.`cat $PID_FILE`; then
            CORE=core.`cat $PID_FILE`
         elif test -f "$HL.core" ; then
            CORE="$HL.core"
         fi
         
         if test -n "$CORE"; then
            $GDB $HL $CORE -x debug.cmds -batch >> $DEBUG_LOG
         fi
      
         echo "End of crash report" >> $DEBUG_LOG
         echo "----------------------------------------------" >> $DEBUG_LOG
         echo $CRASH_DEBUG_MSG
         rm debug.cmds
      else
         echo "Add \"-debug\" to the $0 command line to generate a debug.log to help with solving this problem"
      fi
   fi
}

detectcpu() {
   # Attempts to auto detect the CPU
   echo "Auto detecting CPU"

   if test "FreeBSD" = `uname`; then
      PROC="/usr/compat/linux/proc"
   else
      PROC="/proc"
   fi

   if test -e $PROC/cpuinfo; then
      CPU_VERSION="`grep "cpu family" $PROC/cpuinfo | cut -f2 -d":" | tr -d " " | uniq`";
      if test $CPU_VERSION -lt 4; then
         echo "Error: hlds_l REQUIRES a 486 CPU or better";
         quit 1
      elif test $CPU_VERSION -ge 15; then
         # Core 2 or greater
         echo "Using AMD Optimised binary."
         HL=./hlds_amd
      elif test $CPU_VERSION -ge 6; then
         AMD="`grep AMD $PROC/cpuinfo`";
         if test -n "$AMD"; then
            echo "Using AMD Optimised binary."
            HL=./hlds_amd
         else
            echo "Using Pentium II Optimised binary."

            # there is a CPU manufactured by VIA that
            # doesn't support some PII instructions...
            # detect this.
            VIACHIP=`grep CentaurHauls $PROC/cpuinfo`
         
            if test -z "$VIACHIP"; then
               HL=./hlds_i686
            fi
         fi      
      else
         echo "Using default binary."
      fi
   elif test "FreeBSD" = `uname`; then
      CPU="`grep 'CPU:' /var/run/dmesg.boot`"
      AMD="`echo $CPU |grep AMD`"
      K8="`echo $CPU |grep K8`"
      I686="`echo $CPU |grep 686`"
      if test -n "$AMD"; then
         echo "Using AMD Optimised binary."
         HL=./hlds_amd
      elif test -n "$K8" ; then
         echo "Using AMD Optimised binary."
         HL=./hlds_amd
      elif test -n "$I686" ; then
         echo "Using Pentium II Optimised binary."
         HL=./hlds_i686
      else
         echo "Using default binary."
      fi
   else
      echo "Using default binary."
   fi
}

update() {
   updatesingle
}

updatesingle() {
   # Run the steam update
   # exits on failure if STEAMERR is set

   if test -n "$AUTO_UPDATE"; then
      if test -f "$STEAM"; then
         echo "Updating server using Steam."
         CMD="$STEAM -command update -game $GAME -dir .";
         if  test -n "$BETA_VERSION"; then
           CMD="$CMD -beta $BETA_VERSION";
         fi

         $CMD
         if test $? -ne 0; then
            if test -n "$STEAMERR"; then
               echo "`date`: Steam Update failed, exiting."
               quit 1
            else
               echo "`date`: Steam Update failed, ignoring."
               return 0
            fi
         fi
      else
         if test -n "$STEAMERR"; then
            echo "Could not locate steam binary:$STEAM, exiting.";
            quit 1
         else
            echo "Could not locate steam binary:$STEAM, ignoring.";
            return 0
         fi
      fi
   fi

   return 1
}
   
run() {
   # Runs the steam update and server
   # Loops if RESTART is set
   # Debugs if server failure is detected
   # Note: if RESTART is not set then
   # 1. DEBUG is set then the server is NOT exec'd
   # 2. DEBUG is not set the the server is exec'd

   if test -n "$RESTART" ; then
      echo "Auto-restarting the server on crash"

      #loop forever
      while true
      do
         # Update if needed
         update

         # Run the server
         $HL_CMD
         retval=$?
         if test $retval -eq 0 && test -z "$AUTO_UPDATE"; then
            break; # if 0 is returned then just quit
         fi

         debugcore $retval

         echo "`date`: Server restart in $TIMEOUT seconds"

         # don't thrash the hard disk if the server dies, wait a little
         sleep $TIMEOUT
      done # while true
   else
      # Update if needed
      update

      # Run the server
      if test "$DEBUG" -eq 0; then
         # debug not requested we can exec
         exec $HL_CMD
      else
         # debug requested we can't exec
         $HL_CMD
         debugcore $?
      fi
   fi
}

quit() {
   # Exits with the give error code, 1
   # if none specified.
   # exit code 2 also prints syntax
   exitcode="$1"

   # default to failure
   if test -z "$exitcode"; then
      exitcode=1
   fi

   case "$exitcode" in
   0)
      echo "`date`: Server Quit" ;;
   2)
      syntax ;;
   *)
      echo "`date`: Server Failed" ;;
   esac

   # Remove pid file
   if test -n "$PID_FILE" && test -f "$PID_FILE" ; then
      # The specified pid file
      rm -f $PID_FILE
   fi

   # reset SIGINT and then kill ourselves properly
   trap - 2
   kill -2 $$
}

# Initialise
init $*

# Run
run

# Quit normally
quit 0


Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2013.05.14. 20:22 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2012.10.09. 13:48
Hozzászólások: 1439
Megköszönték neki: 174 alkalommal
Látom nem érted. Ezt a scriptet kell futtatni, amit még paraméterezni kell a --debuggal. Tehát nem a scriptbe kell pötyögni ( azt is meg lehet oldani, de így egyszerűbb ), hanem az indításakor kell kiadni neki a paramétert.

_________________
Minden jót! :)


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 8 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 20 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole