Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
installation:dedicated_server_standalone [2009/01/20 03:38] DeaD_EyE |
installation:dedicated_server_standalone [2010/07/10 10:43] (aktuell) DeaD_EyE |
||
---|---|---|---|
Zeile 3: | Zeile 3: | ||
===== Linux ===== | ===== Linux ===== | ||
- | Voraussetzung um einen Server installieren zu können ist der direkte Zugriff auf die Konsole oder der Zugriff auf eine Shell über eine SSH-Verbindung auf den Host. Die wichtigen Grundbefehle unter Linux sollten bekannt sein, damit ein sicherer Umgang mit dem Server gewährleistet ist. **Es ist davon absolut abzuraten den Server mit Root-Rechten einzurichten.** | + | Voraussetzung um einen Server installieren zu können ist der direkte Zugriff auf die Konsole oder der Zugriff auf eine Shell über eine SSH-Verbindung auf den Host. Die wichtigen Grundbefehle unter Linux sollten bekannt sein, damit ein sicherer Umgang mit dem Server gewährleistet ist. **Es ist davon absolut abzuraten den Server mit Root-Rechten einzurichten bzw. auch zu starten.** |
==== User einrichten ==== | ==== User einrichten ==== | ||
Zeile 28: | Zeile 28: | ||
=== Fehlerquellen === | === Fehlerquellen === | ||
== Uncompress == | == Uncompress == | ||
- | Treten nach dem Ausführen vom hldsupdatetool.bin Fehler auf, liegt es am fehlenden "uncompress". Manche Distributionen haben es Standardmäßig nicht mit drin.\\ | + | Treten nach dem Ausführen vom hldsupdatetool.bin Fehler((sh: uncompress: command not found)) auf, liegt es am fehlenden "uncompress". Manche Distributionen haben es Standardmäßig nicht mit drin.\\ |
{{:installation:uncompress_command_not_found.jpg|}}\\ | {{:installation:uncompress_command_not_found.jpg|}}\\ | ||
- | Der Befehl ''ln -s $(which gunzip) $(dirname $(which gunzip))/uncompress'' legt eine symbolische Verknüpfung Namens uncompress zu gunzip im gleichern Verzeichnis an. | + | Folgender Befehl legt eine symbolische Verknüpfung Namens uncompress zu gunzip im gleichern Verzeichnis an: |
+ | <code>ln -s $(which gunzip) $(dirname $(which gunzip))/uncompress</code> | ||
== 64-Bit-System == | == 64-Bit-System == | ||
- | In seltenen Fällen hat der Hoster der bei vorinstallierten 64-Bit Distribution die Bibliotheken für 32-Bit-Programme vergessen mit zu installieren. In diesem Fall lässt sich dann ''hldsupdatetool.bin'' nicht ausführen. Unter Debian können mittels ''apt-get install ia32-libs'' die fehlenden 32-Bit-Bibliotheken heruntergeladen werden. | + | In seltenen Fällen hat der Hoster bei vorinstallierten 64-Bit Distribution die Bibliotheken für 32-Bit-Programme vergessen mit zu installieren. In diesem Fall lässt sich dann ''hldsupdatetool.bin''((''-bash: ./hldsupdatetool.bin: No such file or directory'')) nicht ausführen. Unter Debian können mit folgendem Befehl die 32-Bit-Bibliotheken installiert werden: |
+ | <code>apt-get install ia32-libs</code> | ||
==== Server installieren ==== | ==== Server installieren ==== | ||
Zeile 50: | Zeile 52: | ||
=== Modifikationen von Drittanbietern === | === Modifikationen von Drittanbietern === | ||
Viele Anbieter stellen für ihre [[:mods]] auch Dateien für Linux-Server zur Verfügung. | Viele Anbieter stellen für ihre [[:mods]] auch Dateien für Linux-Server zur Verfügung. | ||
- | Da es gegen die Lizenz verstößt, die Dateien vom SRCDS-Server so anzubieten, muss der Server zuerst mit dem Steam-Installer heruntergeladen werden. In den meisten Fällen reicht es aus die [[:mods|Modifikation]] __Half-Life 2 Deathmatch__ "hl2mp" zu verwenden, um den SRCDS herunterzuladen. Bei diesem Beispiel richten wir einen Server für "Eternal Silence" ein. Dieses Mod benötigt och die alte "Source Engine". Sollte eine andere [[:mods]] eingerichtet werden, die die "Orange Box Engine" benötigt, muss mit dem Steam-Installer anstatt "hl2mp" "tf" ((Team Fortress 2)) eingerichtet werden. | + | Da es gegen die Lizenz verstößt, die Dateien vom SRCDS-Server so anzubieten, muss der Server zuerst mit dem Steam-Installer heruntergeladen werden. In den meisten Fällen reicht es aus die [[:mods|Modifikation]] __Half-Life 2 Deathmatch__ "hl2mp" zu verwenden, um den SRCDS herunterzuladen. Bei diesem Beispiel richten wir einen Server für "Eternal Silence"((Diese Modifikation ist mittlerweile über Steam direkt verfügbar)) ein. Dieses Mod benötigt noch die alte "Source Engine". Sollte eine andere [[:mods|Modifikation]] eingerichtet werden, die die "Orange Box Engine" benötigt, muss mit dem Steam-Installer anstatt "hl2mp" "tf" ((Team Fortress 2)) eingerichtet werden. |
<code>mkdir ~/eternal_silence | <code>mkdir ~/eternal_silence | ||
cd ~/steam | cd ~/steam | ||
Zeile 59: | Zeile 61: | ||
wget http://downloads.gbs-clan.de/hl2/mods/Eternal_Silence/3.x/Eternal_Silence_3_0_server.tar.gz | wget http://downloads.gbs-clan.de/hl2/mods/Eternal_Silence/3.x/Eternal_Silence_3_0_server.tar.gz | ||
tar -xzf Eternal_Silence_3_0_server.tar.gz -C ~/eternal_silence</code> | tar -xzf Eternal_Silence_3_0_server.tar.gz -C ~/eternal_silence</code> | ||
+ | Der Parameter ''-C ~/eternal_silence'' entpackt den Inhalt des Archives nach ''~/eternal_silence''. Es sollte sicher gestellt werden, dass das Verzeichnis der [[:mods|Modifikation]] am richtigen Ort entpackt wurde. | ||
==== Server starten ==== | ==== Server starten ==== | ||
Zeile 65: | Zeile 68: | ||
=== Startparameter === | === Startparameter === | ||
Die [[startparameter|Startparameter]] vom Server sind unter Linux und Windows fast identisch. | Die [[startparameter|Startparameter]] vom Server sind unter Linux und Windows fast identisch. | ||
+ | **Anmerkung**: Seit dem Update befindet sich CS:S im Unterverzeichnis ''orangebox'' | ||
In dem Beispiel starten wir einen CS:S-Server mit der IP 123.123.123.123 auf dem Standard-Port 27015: | In dem Beispiel starten wir einen CS:S-Server mit der IP 123.123.123.123 auf dem Standard-Port 27015: | ||
- | <code>cd ~/css-public | + | <code>cd ~/css-public/orangebox |
- | ./srcds_run -game cstrike -maxplayers 10 -ip 123.123.123.123 -port 27015 -tickrate 66 -autoupdate -debug +map de_dust2</code> | + | ./srcds_run -game cstrike -maxplayers 10 -ip 123.123.123.123 -port 27015 -autoupdate -debug +map de_dust2</code> |
{{:installation:start_css.jpg|}}\\ | {{:installation:start_css.jpg|}}\\ | ||
Die Fehlermeldungen sind zum Teil ganz normal und lassen sich nicht beseitigen. Wird das Fester jetzt geschlossen, die PuTTY-Session also beendet, schließt sich auch automatisch der Server, da er ein Kind-Prozess von der Shell ist, die geschlossen wird. Es gibt 2 Methoden dies zu verhindern. | Die Fehlermeldungen sind zum Teil ganz normal und lassen sich nicht beseitigen. Wird das Fester jetzt geschlossen, die PuTTY-Session also beendet, schließt sich auch automatisch der Server, da er ein Kind-Prozess von der Shell ist, die geschlossen wird. Es gibt 2 Methoden dies zu verhindern. | ||
Zeile 75: | Zeile 78: | ||
Der Befehl nohup veranlasst andere Programme, die durch nohup gestartet worden sind, das Hangup-Signal der Konsole zu ignorieren. Mit dem Kaufmanns-Und am Ende der Zeile wird die Anwendung, in diesem Fall der Server, im Hintergrund gestartet.\\ | Der Befehl nohup veranlasst andere Programme, die durch nohup gestartet worden sind, das Hangup-Signal der Konsole zu ignorieren. Mit dem Kaufmanns-Und am Ende der Zeile wird die Anwendung, in diesem Fall der Server, im Hintergrund gestartet.\\ | ||
**Ein Beispiel:** | **Ein Beispiel:** | ||
- | <code>nohup ./srcds_run -game cstrike -maxplayers 10 -ip 123.123.123.123 -port 27015 -tickrate 66 -autoupdate -debug +map de_dust2 2>&1 >/dev/null &</code> | + | <code>nohup ./srcds_run -game cstrike -maxplayers 10 -ip 123.123.123.123 -port 27015 -autoupdate -debug +map de_dust2 2>&1 >/dev/null &</code> |
== screen == | == screen == | ||
Screen ist ein Fenstermanager, der es erlaubt, erzeugte Fenster auch im Hintergrund nach Beendigung der SSH-Verbindung, laufen zu lassen. Die Fenster können mit dem screen-Befehl wieder geholt werden. Zu dem Befehl ''screen'' gibt es im Internet eine Vielzahl an Anleitungen. Bei den meisten Distributionen muss es nachträglich installiert werden.\\ | Screen ist ein Fenstermanager, der es erlaubt, erzeugte Fenster auch im Hintergrund nach Beendigung der SSH-Verbindung, laufen zu lassen. Die Fenster können mit dem screen-Befehl wieder geholt werden. Zu dem Befehl ''screen'' gibt es im Internet eine Vielzahl an Anleitungen. Bei den meisten Distributionen muss es nachträglich installiert werden.\\ | ||
**Ein Beispiel:** | **Ein Beispiel:** | ||
- | <code>screen -mdS server1 ./srcds_run -game cstrike -maxplayers 10 -ip 123.123.123.123 -port 27015 -tickrate 66 -autoupdate -debug +map de_dust2</code> | + | <code>screen -mdS server1 ./srcds_run -game cstrike -maxplayers 10 -ip 123.123.123.123 -port 27015 -autoupdate -debug +map de_dust2</code> |
=== Häufige Fehler === | === Häufige Fehler === | ||
Zeile 166: | Zeile 169: | ||
In dem Beispiel starten wir einen HL2DM-Server mit der IP 123.123.123.123 auf dem Standard-Port 27015: | In dem Beispiel starten wir einen HL2DM-Server mit der IP 123.123.123.123 auf dem Standard-Port 27015: | ||
<code>cd C:\Documents and Settings\sosi\Desktop\server1 | <code>cd C:\Documents and Settings\sosi\Desktop\server1 | ||
- | srcds.exe -console -game cstrike -maxplayers 10 -ip 123.123.123.123 -port 27015 -tickrate 66 -debug +map dm_lockdown</code> | + | srcds.exe -console -game hl2mp -maxplayers 10 -ip 123.123.123.123 -port 27015 -debug +map dm_lockdown</code> |
Die Fehlermeldungen sind zum Teil ganz normal und lassen sich nicht beseitigen. Das neue Serverfenster darf nicht geschlossen werden, da sonst der Server beendet wird. Es kann jedoch minimiert werden. | Die Fehlermeldungen sind zum Teil ganz normal und lassen sich nicht beseitigen. Das neue Serverfenster darf nicht geschlossen werden, da sonst der Server beendet wird. Es kann jedoch minimiert werden. | ||
Zeile 203: | Zeile 206: | ||
==== autoexec.cfg ==== | ==== autoexec.cfg ==== | ||
Ein Beispiel für eine ''autoexec.cfg'': | Ein Beispiel für eine ''autoexec.cfg'': | ||
- | <code>//Hier wird der Servername festgelegt | + | <code>//Sporadischer Eintrag. |
- | //Sporadischer Eintrag. | + | |
sv_pure 0 | sv_pure 0 | ||
//Es können hier z.B. noch Scripte für Eventscripts geladen werden. | //Es können hier z.B. noch Scripte für Eventscripts geladen werden. |