Benutzer-Werkzeuge

Webseiten-Werkzeuge


installation:dedicated_server_standalone:script

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen gezeigt.

Link zu dieser Vergleichsansicht

installation:dedicated_server_standalone:script [2010/03/06 13:05]
DeaD_EyE neue Version
installation:dedicated_server_standalone:script [2012/10/18 20:37] (aktuell)
fluxX [Konfigurationsdateien]
Zeile 3: Zeile 3:
  
 ===== Linux ===== ===== Linux =====
-  * {{:installation:dedicated_server_standalone:start-script-1.2.4.tar.gz|Start,Stop und Restartscript mit Konfigdateien (v1.2.3)}} +  * {{:installation:dedicated_server_standalone:start-script-1.2.9.tar.gz|Start,Stop und Restartscript mit Konfigdateien (v1.2.9)}} \\ <code># 1.2.9 
-Das Script basiert auf Konfigurationsdateien. Die Konfigdateien müssen mit der ASCII-Zeichenkodierung im UNIX-Format((Steuerzeichen LF am Zeilenende.)) gespeichert werden. Als Editor unter Windows ist [[http://notepad-plus.sourceforge.net/de/|Notepad++]] zu empfehlen. Dadurch, dass der Daemon und die Parameter beliebig verändert werden können, eignet sich das Script auch für andere Server als den ''Source Dedicated Server''. Jeder Server hat seine eigene Konfigurationsdatei im Verzeichnis ''./startscript/''. Server können in Listen zusammengefasst werden. So ist es möglich mehrere Server mit einem Befehl gleichzeitig zu starten, stoppen, neustarten oder den Status auszugeben. Die Listen sind in ''./startscript/lists/'' enthalten. Soll eine Liste verwendet werden, muss ein ''@'' vor dem Listennamen stehen. Die Befehle start, stop, restart, status akzeptieren mehrere Argumente. So ist es möglich mehrere Server für eine Aktion auszuwählen. Auch mehrere Listen können für eine Aktionen zugleich verwendet werden.+# -fixed setprio 
 +# +sleep 2 between restart command 
 +# +new configexample 
 +
 +# 1.2.8 
 +# -no bugs found 
 +
 +# 1.2.8Beta 
 +
 +# +added support for screenlogs 
 +# +new config var; screen_log=1 -> logging 
 +# +new config var; screen_logfile -> filename 
 +
 +# 1.2.7 
 +# -stored all functions in $script_dir/script_functions/*.func 
 +
 +# 1.2.6 
 +# -updated status to use load_config 
 +# -updated function status with a returncode 
 +# +added watchdog, which loads in the same screen with a new window 
 +#  the var run_watchdog in the startscript loads the watchdog 
 +# +top shows now all child processes of the screen 
 +
 + 
 +# 1.2.5-1 
 +# -status wasn't working</code> 
 + 
 +  * {{:installation:dedicated_server_standalone:start-script-1.2.5.tar.gz|Start,Stop und Restartscript mit Konfigdateien (v1.2.5)}} \\ <code># +color messages 
 +# +run_script_<before|after> supports now arguments 
 +# -better error detection 
 +# -fixed a bug with chown of the wrapper as root</code> 
 +  * {{:installation:dedicated_server_standalone:start-script-1.2.4.tar.gz|Start,Stop und Restartscript mit Konfigdateien (v1.2.4)}} 
 +Das Script basiert auf Konfigurationsdateien. Die Konfigdateien müssen mit der ASCII-Zeichenkodierung im UNIX-Format((Steuerzeichen LF am Zeilenende.)) gespeichert werden. Als Editor unter Windows ist [[http://notepad-plus.sourceforge.net/de/|Notepad++]] zu empfehlen. Dadurch, dass der Daemon und die Parameter beliebig verändert werden können, eignet sich das Script auch für andere Server als den ''Source Dedicated Server''. Jeder Server hat seine eigene Konfigurationsdatei im Verzeichnis ''./startscript/''. Server können in Listen zusammengefasst werden. So ist es möglich mehrere Server mit einem Befehl gleichzeitig zu starten, stoppen, neustarten oder den Status auszugeben. Die Listen sind in ''./startscript/lists/'' enthalten. Soll eine Liste verwendet werden, muss ein ''@'' vor dem Listennamen stehen. Die Befehle start, stop, restart, status akzeptieren mehrere Argumente. So ist es möglich mehrere Server für eine Aktion auszuwählen. Auch mehrere Listen können für eine Aktionen zugleich verwendet werden.\\ \\  
 +Seit Version 1.2.7 kann mit ''./run.sh top <congigname>'' die Auslastung eines Server angezeigt werden. Es werden dann im Programm ''top'' alle Child-Prozesse des Screens aufgeführt. Eine weitere Funktion ist run_watchdog. Für Admins die selber scripten, können so einen Prozess im screen des Servers starten. Eine wichtige interne Änderung des Scripts ist noch, dass alle Funktionen in Dateien ausgelagert sind.
  
 ==== Konfigurationsdateien ==== ==== Konfigurationsdateien ====
 Über die Dateien können für jeden Server einzeln verschiedene Einstellungen vorgenommen werden: Über die Dateien können für jeden Server einzeln verschiedene Einstellungen vorgenommen werden:
-  * Name des Screens +^Variable  ^Beschreibung| 
-  Dateiname des Daemons((z.Bscrds_run oder hlds_run)). +|screen_name=  |Name des Screens.  | 
-  * Eigene Startparameter des Daemons. +|screen_log=  |1 schaltet den Screen-Log ein, 0 deaktivert den Screen-Log.| 
-  * User, mit dem der Daemon gestartet wird, wenn das Script als root ausführt wird. +|screen_logfile=  |Pfad zur Logdatei, die vom Screen erstellt werden soll. Das Verzeichnis muss existieren.| 
-  An welchen CPU-Kern der Server gebunden werden soll. +|daemon_user=  |User, mit dem der Daemon gestartet wird, wenn das Script als root ausführt wird.  | 
-  Mit welcher Priorität der Prozess laufen soll((muss über limits.cfg dem User vorher erlaubt werden)). +|daemon_dir=  |Pfad zum Daemon.  | 
-  Es kann eine Library vorausgeladen werden. Drei freie Preload_Libs von anderen Entwicklern sind enthalten. Zusätzlich kann noch ein zusätzlicher Parameter für die Preload-Lib angegeben werden. Da über Screen nicht direkt die Preload-Lib geladen werden kannerstellt das Script automatisch im Serververzeichnis einen kleinen Wrapper.+|daemon=  |Dateiname des Daemons.  | 
 +|parameter=  |Eigene Startparameter des Daemons | 
 +|daemon_wrapper=  |Dateiname des Wrappers, welcher automatisch erstellt wird.  | 
 +|run_watchdog=  |Pfad zu einem Script((wenn Parameter übergeben werden sollen, muss mit Anführungszeichen gequotet werden)), welches im Screen des Servers ausgeführt wirdEs wird automatisch ein neues Fenster im Screen erstellt, welche die ID 1 hat und watchdog heißt. Mit Strg+a Leertaste kann zum nächsten Fenster gewechselt werden. Für weitere Informationen sollten die manpages zu screen gelesen werden.  | 
 +|run_script_before=  |Pfad zu einem Script((wenn Parameter übergeben werden sollen, muss mit Anführungszeichen gequotet werden)), welches vor dem Daemon gestartet werden soll. Wenn die Variable nicht gesetzt wird, wird auch nichts vor dem Start des Daemons ausgeführt | 
 +|run_script_after=  |Pfad zu einem Script((wenn Parameter übergeben werden sollenmuss mit Anführungszeichen gequotet werden)), welches nach dem Daemon gestartet werden soll. Wenn die Variable nicht gesetzt wird, wird auch nichts nach dem Start des Daemons ausgeführt | 
 +|loop=  |0 = Kein automatischer Restart des Daemons\\ 1 = Restart des Daemons nach einem Absturz.  | 
 +|cpu=  |An welchen CPU-Kern der Server gebunden werden soll. Wird die Variable leer gelassen, wird taskset nicht verwendet.  | 
 +|prio=  |Mit welcher Priorität der Prozess laufen soll((muss über limits.conf dem User vorher erlaubt werden)).  | 
 +|preload_lib=  |Es kann eine Library vorausgeladen werden. Drei freie Preload_Libs von anderen Entwicklern sind enthalten.  | 
 +|preload_lib_parm=  |Zusätzlich kann noch ein zusätzlicher Parameter für die Preload-Lib angegeben werden.((z.B. "FPS=1000")) | 
 + 
 +==== Priorität ==== 
 +Damit der User, mit dem der GameServer gestartet wird, auch die Berechtigung hat, die Priorität festzulegen, muss die limits.conf bearbeitet werden.\\  
 +Mit folgendem Codekann man dem angegeben User die maximal zulässige Priorität unter Debian Lenny zuweisen: 
 +<code>echo "USERNAME - rtprio 99" >> /etc/security/limits.conf</code> 
 ==== Download und Installation ==== ==== Download und Installation ====
-  * Methode 1 <code>wget http://sourceserver.info/wiki/_media/installation/dedicated_server_standalone/installer-startscript-1.2.3.sh +<code>wget http://sourceserver.info/wiki/_media/installation/dedicated_server_standalone/start-script-1.2.7.tar.gz 
-sh installer-startscript-1.2.3.sh</code> +tar -xzf start-script-1.2.7.tar.gz</code> 
-  * Methode 2 <code>wget http://sourceserver.info/wiki/_media/installation/dedicated_server_standalone/start-script-1.2.3.tar.gz +==== Abkürzungen für die Shell ==== 
-tar -xzf start-script-1.2.3.tar.gz</code>+Da mit der Zeit das Eintippen von ''./run.sh start foo'' recht nervig ist, kann man auch Abkürzungen für die einzelnen Aktionen anlegen. 
 +Dazu muss lediglich die Datei ''.bashrc'', welche sich im Homeverzeichnis des Users befindet, angelegt bzw. bearbeitet werden. 
 + 
 +=== Beispiel === 
 +<code> 
 +echo -e "\E[31;40m 
 ++--------------------------------------------------------------+ 
 +|                                                              | 
 +|                                                              | 
 +| gtop <config>      CPU Auslastung der Childprozesse        | 
 +|                      des Screens                             | 
 +| gstatus <config>   Serverstatus anzeigen                   | 
 +| gstart <config>    Server starten                          | 
 +| gstop <config>     - Server stoppen                          | 
 +| grestart <config>  - Server restarten                        | 
 +| glist              - eingerichtete Server anzeigen           | 
 +|                                                              | 
 ++--------------------------------------------------------------+" 
 +tput sgr0 
 + 
 +gtop () { ~/run.sh top $@; } 
 +gget () { ~/run.sh get $@; } 
 +gstart () { ~/run.sh start $@; } 
 +gstop () { ~/run.sh stop $@; } 
 +grestart () { ~/run.sh restart $@; } 
 +gstatus () { ~/run.sh status $@; } 
 +glist () { ~/run.sh list; } 
 +</code> 
 +Da Variablen übergeben werden, kann man in diesem Fall nicht mit ''alias'' arbeiten. Stattdessen habe ich Funktionen verwendet. 
 +== Verwendung == 
 +  * Austlastung von warserver1 anzeigen => ''gtop warserver1'' 
 +  * Warserver 1 neustarten => ''grestart warserver1'' 
 +  * In den Screen von warserver1 wechseln => ''gget warserver1'' 
 +  * Konfigdateien auflisten => ''glist''
  
 ===== Windows ===== ===== Windows =====
installation/dedicated_server_standalone/script.1267877141.txt.bz2 · Zuletzt geändert: 2010/03/06 13:05 von DeaD_EyE