Sous Linux, FiveM fonctionne aussi bien que sous Windows et laisse plus de mémoire libre au serveur, car le système ne consomme presque rien. Il te faudra aussi ta clé de licence et, pour QBCore/ESX/Qbox, MariaDB.
1. Prépare l'utilisateur et le dossier
apt install -y xz-utils wget screen
adduser --disabled-password --gecos "" fivem
su - fivem
mkdir -p ~/server && cd ~/server
2. Télécharge l'artefact
Ouvre dans ton navigateur https://runtime.fivem.net/artifacts/fivem/build_proot_linux/master/, fais un clic droit sur Latest Recommended et copie le lien. Ensuite, sur le serveur :
wget -O fx.tar.xz "COLLE_ICI_LE_LIEN"
tar xf fx.tar.xz
rm fx.tar.xz
3. Lance-le
screen -S fivem
./run.sh
Un PIN pour txAdmin apparaît dans la console. Sors de screen sans l'arrêter avec Ctrl + A puis D (plus sur screen).
4. Entre dans txAdmin par un tunnel SSH
txAdmin écoute sur le 40120, mais ne l'ouvre pas à Internet. Depuis ton PC, ouvre un tunnel :
ssh -L 40120:localhost:40120 root@TON_IP
Avec cette fenêtre ouverte, va sur http://localhost:40120 dans le navigateur de ton PC. Tape le PIN, associe ton compte Cfx.re et déploie la recette (QBCore, ESX Legacy ou Qbox) avec ta clé et les informations de la base de données.
5. Ouvre les ports
ufw allow 30120/tcp
ufw allow 30120/udp
6. Qu'il démarre tout seul
Pour ne pas dépendre de screen, transforme-le en service. En root, crée /etc/systemd/system/fivem.service :
[Unit]
Description=Serveur FiveM
After=network-online.target mariadb.service
Wants=network-online.target
[Service]
User=fivem
WorkingDirectory=/home/fivem/server
ExecStart=/home/fivem/server/run.sh
Restart=on-failure
RestartSec=10
[Install]
WantedBy=multi-user.target
systemctl daemon-reload
systemctl enable --now fivem
Avant, ferme la session screen (screen -r fivem et arrête le serveur) pour qu'il n'y en ait pas deux en même temps. À partir de là, tu gères tout depuis txAdmin.
Rejoindre la partie
Dans FiveM, F8 → connect TON_IP:30120. Si la connexion échoue, vérifie la liste de vérification.