Das folgende Tutorial beschreibt die Installation von Counter-Strike: Global Offensive als Dedicated Server unter Linux.
Wenn wir auf dem Server als root eingeloggt sind, legen wir als erstes
einen Benutzer mit eingeschränkten rechten an unter dem der Server
laufen soll.
|
PHP-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
adduser Username
Adding user `Username' ...
Adding new group `Username' (1000) ...
Adding new user `Username' (1000) with group `Username' ...
Creating home directory `/home/Username' ...
Copying files from `/etc/skel' ...
Enter new UNIX password: Passwort eingeben
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for Username
Enter the new value, or press ENTER for the default
Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [Y/n] y
|
Nun können wir mit der eigentlichen Installation beginnen. Als erstes
legen wir ein neues Verzeichnis für Gameserver an und wechseln ins neu
angelegte Verzeichnis
|
PHP-Quelltext
|
1
2
|
makedir gameserver
cd gameserver
|
ACHTUNG: CS:GO kann nicht mehr mit dem hldsupdatetool.bin installiert werden. Es wird
SteamCMD benötigt:
|
PHP-Quelltext
|
1
|
wget http://blog.counter-strike.net/wp-content/uploads//2012/04/steamcmd.tar.gz
|
Entpacken mit:
|
PHP-Quelltext
|
1
|
tar xfvz steamcmd.tar.gz
|
Steam starten mit:
|
PHP-Quelltext
|
1
|
./steam.sh
|
Falls dies Probleme macht alternativ mit:
|
PHP-Quelltext
|
1
|
STEAMEXE=steamcmd ./steam.sh
|
Steam startet und die benötigten Files werden heruntergeladen. Danach loggen wir uns wie folgt ein:
|
PHP-Quelltext
|
1
|
login username password
|
Ich empfehle nicht den eigenen Steamaccount zu verwenden auch wenn theoretisch eine Lösung mit PGP eingesetzt werden könnte. Der Steam Account welcher für den Server verwendet wird muss kein CS:GO beinhalten.
Falls SteamGuard aktiviert ist zusätzlich noch den Code mitgeben:
|
PHP-Quelltext
|
1
|
login username password steamguardcode
|
Oder alternativ
|
PHP-Quelltext
|
1
|
login anonymous
|
Als nächstes legen wir das Installationsverzeichnis fest z.b:
|
PHP-Quelltext
|
1
|
force_install_dir /home/username/gameserver/csgo
|
Den Dateidownload starten wir mit:
|
PHP-Quelltext
|
1
|
app_update 740
|
Der Server ist nun installiert.
Um den gameserver mit Boardmitteln möglichst einfach zu starten und zu verwalten nehmen wir ein
Startscript und
screen zur Hilfe. Falls screen nicht installiert ist mit
apt-get install screen installieren
Wir legen ein Startscirpt an: neue Datei beispielstart.sh anlegen (muss
ausführbar gemacht werden), die könnte wie folgt aussehen:
Classic Casual:
|
PHP-Quelltext
|
1
2
|
#!/bin/sh
screen -A -m -d -S csgo ./srcds_run -game csgo -console -usercon +game_type 0 +game_mode 0 +mapgroup mg_bomb +map de_dust
|
Classic Competitive:
|
PHP-Quelltext
|
1
2
|
#!/bin/sh
screen -A -m -d -S csgo ./srcds_run -game csgo -console -usercon +game_type 0 +game_mode 1 +mapgroup mg_bomb +map de_dust
|
Arms Race:
|
PHP-Quelltext
|
1
2
|
#!/bin/sh
screen -A -m -d -S csgo ./srcds_run -game csgo -console -usercon +game_type 1 +game_mode 0 +mapgroup mg_armsrace +map ar_shoots
|
Demolition:
|
PHP-Quelltext
|
1
2
|
#!/bin/sh
screen -A -m -d -S csgo ./srcds_run -game csgo -console -usercon +game_type 1 +game_mode 1 +mapgroup mg_demolition +map de_dust
|
Tickrate
Mit CS:GO ist es wieder möglich selber eine -Tickrate als Startparameter mitzugeben. Standard ist 64.
Mögliche Optionen sind 33/64/100/128
|
PHP-Quelltext
|
1
|
-tickrate 128
|
Dank unserem Startscript können wir nun den Gameserver mit folgendem Kommando starten:
./beispielstart.sh
Der Server wird automatisch im hintergrund gestartet.
Server Config
Die aktuelle ESL Server Config findet man unter folgendem
Link
Die wichtigsten Kommandos für screen:
Laufende screen's/Gameserver anzeigen:
screen -ls
In Gameserverconsole wechseln:
screen -r screename/id oder mit
screen -x screename/id
Offenen screen schliessen/beenden :
Ctrl+c
Screen in den
Hintergrund ausblenden:
Ctrl + a + d
Screen der im Hintergrund läuft beenden:
kill screenid