Richten Sie einen Team Fortress 2-Server unter Arch Linux ein

In diesem Tutorial wird erläutert, wie Sie einen Team Fortress 2-Server unter Arch Linux einrichten. Ich gehe davon aus, dass Sie mit einem Nicht-Root-Benutzerkonto angemeldet sind, das über Sudo-Zugriff verfügt. In diesem Lernprogramm wird AUR zum Erstellen von Paketen verwendet. Dieser Vorgang sollte nicht über das Root-Konto ausgeführt werden.

Bevor Sie beginnen

Es ist sehr wichtig, dass Sie das multilibRepository genau dann aktiviert haben, wenn Sie sich auf einem 64-Bit-Server (amd64) befinden. Wenn es nicht aktiviert ist, kann SteamCMD nicht ausgeführt werden und Sie können nicht einmal die Serverdateien herunterladen. Dazu müssen Sie die folgenden Zeilen in auskommentieren /etc/pacman.conf.

[multilib]
Include = /etc/pacman.d/mirrorlist

Wenn Sie sich auf einem 32-Bit-Arch (i686) befinden, können Sie dies ignorieren.

Installieren Sie SteamCMD

Es gibt ein AUR-Paket für SteamCMD und es ist eine der einfachsten Möglichkeiten, SteamCMD auf Arch zu installieren. Es gibt jedoch ein paar seltsame Dinge:

  • Alle relativen Pfade sind relativ zu /usr/share/steamcmd.
  • Um SteamCMD selbst zu aktualisieren, müssen Sie root sein.

Wenn Sie sich auf einem 64-Bit-Server befinden, müssen Sie das Paket installieren lib32-gcc-libs.

sudo pacman -Sy lib32-gcc-libs

Jetzt müssen wir das Paket erstellen. Laden Sie mit Curl den Tarball für das Paket herunter.

curl -O http://media.steampowered.com/installer/steamcmd_linux.tar.gz

Extrahieren Sie nach Abschluss des Downloads das erstellte Verzeichnis und wechseln Sie in das erstellte Verzeichnis.

tar -xvzf steamcmd.tar.gz
cd steamcmd

Erstellen Sie nun mit makepkg das Paket.

makepkg -ci

Wenn Sie das -iFlag nicht an den Befehl makepkg übergeben haben, installieren Sie es mit pacman.

sudo pacman -U *.pkg.tar.xz

Sie haben jetzt SteamCMD installiert und können den Team Fortress 2-Server herunterladen.

Installieren Sie den Team Fortress 2-Server

In diesem Handbuch wird ein separater Benutzer zum Ausführen des Servers verwendet. Daher erstellen wir einen neuen tf2-Benutzer und eine neue Gruppe mit einem eigenen Basisordner /var/lib.

sudo groupadd tf2
sudo mkdir /var/lib/tf2
sudo useradd -d /var/lib/tf2 -g tf2 -s /bin/bash tf2
sudo chown tf2.tf2 -R /var/lib/tf2

Nun installieren Sie den Server.

sudo -u tf2 steamcmd +login anonymous +force_install_dir ~tf2/server +app_update 232250 validate +quit

Sobald der Download abgeschlossen ist, haben Sie den Server installiert.

Konfigurieren

Obwohl Sie den Server ausführen können, sollten einige Konfigurationen vorgenommen werden, damit der Server nicht zu allgemein ist. Die Hauptdatei, in die wir Einstellungen vornehmen, ist die server.cfgDatei. Unten ist eine sehr einfache server.cfgDatei.

Verwenden Sie zum Öffnen / Erstellen der Datei Ihren bevorzugten Editor. Hier wird vim verwendet, aber Sie können jeden Texteditor wie nano verwenden.

sudo -u tf2 vim ~tf2/server/tf/cfg/server.cfg

Fügen Sie Folgendes hinzu. Weitere Einstellungen finden Sie auf der Team Fortress 2-Wiki- und Valve-Entwicklerseite. Stellen Sie sicher, dass Sie einige Einstellungen an Ihre Bedürfnisse anpassen.

hostname "Server Name"
rcon_password "password"
sv_password ""
sv_contact "[email protected]"
sv_tags ""
sv_region "255"
sv_lan "0"

exec banned_user.cfg
exec banned_ip.cfg
writeid
writeip

Ausführen Ihres Servers

Es ist bekannt, dass Sie einen Multiplexer wie GNU Screen oder tmux benötigen , um Ihren Server unbeaufsichtigt auszuführen. Hier werden wir tmux verwenden , um den Server auszuführen. Wenn Sie jedoch den Bildschirm bevorzugen und wissen, wie er verwendet wird, können Sie ihn gerne verwenden.

Installieren Sie tmux mit pacman.

sudo pacman -Sy tmux

Sie können den Server mit dem folgenden Befehl starten. Sie können die Karte und die Maxplayer bei Bedarf ändern.

sudo -u tf2 tmux new-session -d -s tf2-console -d '~tf2/server/srcds_run -console -game tf +map cp_dustbowl +maxplayers 24'

Wenn Sie jemals eine Verbindung zur Konsole herstellen müssen, führen Sie Folgendes aus.

sudo -u tf2 tmux attach -t tf2-console

Sie können die Serverkonsole verlassen, indem Sie STRG + B eingeben , diese Tasten loslassen und dann D drücken .

Laufen mit systemd

Das Ausführen des Servers mit systemd ist aus vielen Gründen praktisch. Das wichtigste ist, dass Sie es starten können, wenn der VPS startet. Dazu müssen ein Skript und eine systemd-Einheit geschrieben werden. Obwohl dies eine gute Idee ist, ist sie optional .

Das erste, was zu schreiben ist, ist das Startskript. Verwenden Sie zum Erstellen des Skripts Ihren bevorzugten Editor. Hier wird vim verwendet, aber Sie können jeden Texteditor wie nano verwenden.

sudo -u tf2 vim ~tf2/server/tf2.sh

Fügen Sie Folgendes hinzu.

#!/bin/sh

USER=$2

if [ -z $2 ]; then
  USER="tf2"
fi

case "$1" in
  start)
    sudo -u $ tmux new-session -d -s tf2-console -d '/var/lib/tf2/server/srcds_run -console -game tf +map cp_dustbowl +maxplayers 24'
    ;;

  stop)
    sudo -u $ tmux send-keys -t tf2-console 'say Server shutting down in 10 seconds!' C-m
    sleep 10
    sudo -u $ tmux send-keys -t tf2-console 'quit' C-m
    sleep 5
    ;;

  *)
    echo "Usage: $0  user"
esac

exit 0

Jetzt müssen Sie die systemd-Einheit erstellen. Verwenden Sie zum Erstellen des Geräts Ihren bevorzugten Editor. Hier wird vim verwendet, aber Sie können jeden Texteditor wie nano verwenden.

sudo vim /usr/lib/systemd/system/tf2.service

Fügen Sie Folgendes hinzu.

[Unit]
Description=Team Fortress 2 Server (SRCDS)
After=local-fs.target network.target

[Service]
ExecStart=/var/lib/tf2/server/tf2.sh start
ExecStop=/var/lib/tf2/server/tf2.sh stop
Type=forking

[Install]
WantedBy=multi-user.target

Stellen Sie nun sicher, dass die tf2.shDatei ausführbar ist.

sudo chmod +x ~tf2/server/tf2.sh

Nach all dem können Sie systemctlden Server starten und stoppen. Sie können es auch verwenden, um es beim Booten zu starten.

Anfangen:

sudo systemctl start tf2.service

Stoppen:

sudo systemctl stop tf2.service

Neustarten:

sudo systemctl restart tf2.service

So aktivieren Sie beim Booten:

sudo systemctl enable tf2.service

So deaktivieren Sie beim Booten:

sudo systemctl disable tf2.service

Obwohl systemd das Starten und Stoppen des Servers übernimmt, können Sie mit dem folgenden Befehl auf die Konsole zugreifen:

sudo -u tf2 tmux attach -t tf2-console

Schlussbemerkungen

SteamCMD wird in einem Bereich installiert, in dem nur root Dateien ändern kann (siehe Hinweis unter "SteamCMD installieren"). Wenn Sie SteamCMD jemals selbst aktualisieren müssen, führen Sie es einfach als root aus.

sudo steamcmd +quit

Wenn Sie den Server aktualisieren müssen. Stoppen Sie zuerst den Server und verwenden Sie dann SteamCMD zum Aktualisieren (mit demselben Befehl zum Installieren).

sudo systemctl stop tf2.service
sudo -u tf2 steamcmd +login anonymous +force_install_dir ~tf2/server +app_update 232250 validate +quit
sudo systemctl start tf2.service

Es gibt viel mehr Konfigurationsthemen, die in diesem Tutorial nicht behandelt werden. Wenn Sie weitere Informationen benötigen, lesen Sie bitte das Team Fortress 2-Wiki und das Valve Developer-Wiki.



Leave a Comment

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Kann KI mit zunehmender Anzahl von Ransomware-Angriffen kämpfen?

Ransomware-Angriffe nehmen zu, aber kann KI helfen, den neuesten Computervirus zu bekämpfen? Ist KI die Antwort? Lesen Sie hier, ob KI boone oder bane ist

ReactOS: Ist das die Zukunft von Windows?

ReactOS: Ist das die Zukunft von Windows?

ReactOS, ein quelloffenes und kostenloses Betriebssystem, ist hier mit der neuesten Version. Kann es den Anforderungen moderner Windows-Benutzer genügen und Microsoft zu Fall bringen? Lassen Sie uns mehr über dieses alte, aber neuere Betriebssystem erfahren.

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Bleiben Sie in Verbindung über die WhatsApp Desktop App 24*7

Whatsapp hat endlich die Desktop-App für Mac- und Windows-Benutzer auf den Markt gebracht. Jetzt können Sie ganz einfach von Windows oder Mac auf WhatsApp zugreifen. Verfügbar für Windows 8+ und Mac OS 10.9+

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Wie kann KI die Prozessautomatisierung auf die nächste Stufe heben?

Lesen Sie dies, um zu erfahren, wie Künstliche Intelligenz bei kleinen Unternehmen beliebt wird und wie sie die Wahrscheinlichkeit erhöht, sie wachsen zu lassen und ihren Konkurrenten einen Vorsprung zu verschaffen.

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

macOS Catalina 10.15.4 Supplement Update verursacht mehr Probleme als sie zu lösen

Vor kurzem hat Apple macOS Catalina 10.15.4 als Ergänzungsupdate veröffentlicht, um Probleme zu beheben, aber es scheint, dass das Update mehr Probleme verursacht, die zum Bricking von Mac-Computern führen. Lesen Sie diesen Artikel, um mehr zu erfahren

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

13 Tools zur kommerziellen Datenextraktion von Big Data

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Was ist ein Journaling-Dateisystem und wie funktioniert es?

Unser Computer speichert alle Daten in einer organisierten Weise, die als Journaling-Dateisystem bekannt ist. Es ist eine effiziente Methode, die es dem Computer ermöglicht, Dateien zu suchen und anzuzeigen, sobald Sie auf die Suche klicken.https://wethegeek.com/?p=94116&preview=true

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Technologische Singularität: Eine ferne Zukunft der menschlichen Zivilisation?

Da sich die Wissenschaft schnell weiterentwickelt und einen Großteil unserer Bemühungen übernimmt, steigt auch das Risiko, uns einer unerklärlichen Singularität auszusetzen. Lesen Sie, was Singularität für uns bedeuten könnte.

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Ein Einblick in 26 Big-Data-Analysetechniken: Teil 1

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

Der Einfluss künstlicher Intelligenz im Gesundheitswesen 2021

KI im Gesundheitswesen hat in den letzten Jahrzehnten große Fortschritte gemacht. Somit wächst die Zukunft der KI im Gesundheitswesen immer noch von Tag zu Tag.