Wie du einen FiveM-Server auf Linux einrichtest: Artefakte, systemd und ufw

Führe einen FiveM-Server auf Ubuntu oder Debian aus: lade das Artefakt herunter, extrahiere es, starte run.sh mit txAdmin oder server.cfg, halte es mit screen oder systemd am Leben, öffne Ports mit ufw.

Du hast einen Linux-VPS (Ubuntu oder Debian) und möchtest einen FiveM-Server darauf. Der Prozess ist kurz: Hole dir die Serverdateien, starte sie, halte sie am Leben, und öffne die Ports. Diese Anleitung behandelt jeden Schritt mit Befehlen, die du kopieren kannst.

Bevor du anfängst

Du brauchst einen Lizenzschlüssel von portal.cfx.re, siehe den Lizenzschlüssel-Fehler, wenn du noch keinen erstellt hast. Installiere die Tools, die du verwendest:

bash
sudo apt update
sudo apt install -y wget git xz-utils screen

Erstelle einen separaten Benutzer, damit der Server nicht als root läuft:

bash
sudo adduser fivem
sudo su - fivem

Alles unten wird als dieser Benutzer gemacht.

Lade das Artefakt herunter

Das Serverprogramm ("Artefakte") für Linux kommt von Cfx.re:

text
https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/

Öffne diese Seite, wähle den empfohlenen Build, und kopiere den Link zu fx.tar.xz. Dann:

bash
mkdir -p ~/fivem/server
cd ~/fivem/server
wget https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/<build>/fx.tar.xz
tar xf fx.tar.xz
rm fx.tar.xz

Ersetze <build> mit dem Pfad, den du kopiert hast. Nach dem Extrahieren solltest du ein run.sh im Ordner sehen.

Hole die Serverdaten

Die "Serverdaten" sind, wo deine server.cfg und deine Resources leben. Die Cfx.re-Basis-Resources sind auf GitHub:

bash
cd ~/fivem
git clone https://github.com/citizenfx/cfx-server-data.git server-data

Erstelle die Config in server-data/server.cfg:

cfg
endpoint_add_tcp "0.0.0.0:30120"
endpoint_add_udp "0.0.0.0:30120"

sv_hostname "My FiveM server"
sv_maxclients 32
sv_licenseKey "cfxk_your_key_here"

ensure mapmanager
ensure chat
ensure spawnmanager
ensure sessionmanager
ensure basic-gamemode
ensure hardcap

Starte es: txAdmin oder einfach

Mit txAdmin (empfohlen). Führe run.sh ohne Argumente aus. txAdmin startet, druckt eine PIN und eine Webadresse, und du beendest die Einrichtung im Browser auf Port 40120:

bash
cd ~/fivem/server
bash run.sh

txAdmin behält seine Daten in einem txData-Ordner, normalerweise in dem Ordner, von dem du es startet, also starte es immer von der gleichen Stelle. Im Panel kannst du ein Recipe nutzen, um einen Basisserver bereitzustellen, oder es auf den server-data-Ordner zeigen, den du geklont hast.

Ohne txAdmin. Starte vom server-data-Ordner und übergebe die Config:

bash
cd ~/fivem/server-data
bash ../server/run.sh +exec server.cfg

Du erhältst die einfache Konsole in deinem Terminal. Drücke Strg+C, um es zu stoppen.

Wenn du dein txAdmin-Passwort später verlierst, siehe txAdmin Passwort vergessen.

Halte es mit screen am Leben

Die schnelle Weise, den Server am Leben zu halten, wenn du dich von SSH trennst, ist screen:

bash
screen -S fivem
cd ~/fivem/server
bash run.sh

Trenne dich mit Strg+A, dann D ab. Der Server läuft weiter. Verbinde dich später wieder:

bash
screen -r fivem

Das funktioniert, aber nichts startet den Server neu, wenn die Maschine neu startet oder der Prozess stirbt.

Halte es mit systemd am Leben

Ein systemd-Service startet den Server beim Booten und startet ihn nach einem Crash neu. Erstelle die Datei als root (oder mit sudo):

bash
sudo nano /etc/systemd/system/fivem.service
ini
[Unit]
Description=FiveM server
After=network.target

[Service]
Type=simple
User=fivem
WorkingDirectory=/home/fivem/fivem/server
ExecStart=/bin/bash /home/fivem/fivem/server/run.sh
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target

Dies startet txAdmin, das den Gameserver selbst verwaltet. Dann aktiviere und starte es:

bash
sudo systemctl daemon-reload
sudo systemctl enable fivem
sudo systemctl start fivem

Nützliche Befehle:

bash
sudo systemctl status fivem
sudo journalctl -u fivem -f
sudo systemctl restart fivem

Die journalctl-Zeile zeigt die Live-Ausgabe, wo du die txAdmin-PIN beim ersten Start liest.

Tipp: mit systemd gibt es keine interaktive Konsole. Führe es mit txAdmin aus und nutze die txAdmin-Live-Konsole, was der Grund ist, txAdmin auf Linux zu bevorzugen.

Öffne die Ports mit ufw

bash
sudo ufw allow OpenSSH
sudo ufw allow 30120/tcp
sudo ufw allow 30120/udp
sudo ufw allow 40120/tcp
sudo ufw enable

Erlaube SSH, bevor du ufw aktivierst, sonst sperrst du dich aus. Die 40120-Regel ist für txAdmin: Wenn du den Server nur vom VPS durch einen SSH-Tunnel verwaltest, kannst du sie weglassen. Überprüfe auch die eigene Firewall-Panel deines Hosting-Anbieters. Die vollständige Netzwerk-Überprüfung, einschließlich des Testens mit F8 connect, ist in FiveM-Server wird nicht angezeigt: Port-Weiterleitung und Firewall.

Später aktualisieren

Um zu aktualisieren, stoppe den Service, ersetze den Inhalt von ~/fivem/server mit einem neuen Artefakt, und starte es wieder. Deine txData und server-data bleiben an Ort und Stelle. Die Details sind in Aktualisiere FiveM Server Artefakte.

Checkliste

Symptom Behebung
Kein run.sh nach dem Download Extrahiere mit tar xf fx.tar.xz im Server-Ordner
Brauche das txAdmin-Panel Führe bash run.sh ohne Argumente aus, öffne Port 40120
Starte ohne txAdmin bash ../server/run.sh +exec server.cfg von server-data
Server stoppt, wenn SSH schließt Nutze screen -S fivem oder einen systemd-Service
Sollte beim Booten starten systemctl enable fivem
Spieler können sich nicht verbinden Erlaube 30120 tcp und udp in ufw und in der Firewall des Hosts

Kurze Antworten

Wie führe ich einen FiveM-Server auf Linux aus?

Lade das Linux-Artefakt von runtime.fivem.net herunter, extrahiere es mit tar xf fx.tar.xz, und starte run.sh. Führe es ohne Argumente aus für txAdmin, oder mit +exec server.cfg um den Server direkt zu starten.

Wie halte ich den FiveM-Server am Leben, wenn ich SSH schließe?

Führe ihn in screen oder tmux aus, oder besser, als einen systemd-Service, der beim Booten startet und nach einem Crash neu startet.

Sollte ich FiveM als root ausführen?

Nein. Erstelle einen normalen Benutzer dafür. Es begrenzt den Schaden, wenn eine Resource kompromittiert ist, und txAdmin selbst wird dich warnen, wenn es als root läuft.

Scripts ohne dieses Problem

Mic PhoneEin faltbares Handy, das sich zum Tablet aufklappt und bis aufs echte Handy des Spielers reicht.Script ansehen →Advanced BoostingFahrzeug-Boosting per Tablet: Aufträge von Klasse D bis S+, Crews und eine Live-Warteschlange.Script ansehen →Crypto MiningKauf eine Lagerhalle, bau Rigs Teil für Teil und mine Coins auf einem Markt, der sich bewegt.Script ansehen →

Weiterlesen