Een bruikbare FiveM-back-up bevat de resources, configuratie, database en de informatie die nodig is om ze samen te herstellen. Een gekopieerde map is onvolledig als de speler-, inventaris-, huisvestings- of economiestatus zich in MariaDB/MySQL bevindt.
Definieer de back-upset
- resource mappen en aangepaste scripts
server.cfg, permissies en implementatieconfiguratie- txAdmin profielen en recepten die je daadwerkelijk nodig hebt
- een consistente database dump
- versie notities voor artefacten, framework en afhankelijkheden
Sluit caches, logs en gegenereerde bestanden uit, tenzij ze nodig zijn voor een onderzoek. Plaats nooit geheimen in een openbare repository.
Verifieer voor MariaDB de huidige opties in de officiële mariadb-dump documentatie in plaats van inloggegevens of vlaggen van een niet-gerelateerde server te kopiëren.
Windows: PowerShell en Taakplanner
Maak een PowerShell-script dat schrijftaken stopt of coördineert, de database exporteert met de dump-tool van je databaseleverancier, de serverbestanden kopieert en schrijft naar een map met een tijdstempel. Gebruik expliciete paden en faal wanneer de database-export mislukt.
$Stamp = Get-Date -Format 'yyyyMMdd-HHmmss'
$Destination = "D:\FiveM-Backups\$Stamp"
New-Item -ItemType Directory -Path $Destination | Out-Null
Copy-Item 'D:\FXServer\server-data' "$Destination\server-data" -Recurse
# Run the database dump command documented for your database installation.
Maak in Taakplanner een speciaal serviceaccount met lage privileges aan, voer uit ongeacht of de gebruiker is aangemeld, stel het pad naar het PowerShell-programma en -script expliciet in, en configureer de geschiedenis van fouten/herpogingen. Test de taak handmatig voordat je op het schema vertrouwt.
Linux: script en cron/systemd timer
#!/usr/bin/env bash
set -euo pipefail
stamp=$(date -u +%Y%m%dT%H%M%SZ)
dest="/srv/backups/fivem/$stamp"
install -d -m 0700 "$dest"
tar -C /srv/fivem -czf "$dest/server-data.tar.gz" server-data
# Add the authenticated database dump command for your MariaDB/MySQL setup.
Voer het uit via een systemd timer of cron met een speciaal account. Log de exit-status en waarschuw bij een fout. Hardcode geen databasewachtwoorden in een voor iedereen leesbaar script.
Gebruik de 3-2-1 regel
Bewaar drie kopieën, op twee opslagtypen, met één kopie off-site. Versleutel off-site archieven, definieer retentie, en voorkom dat de productieserver elke externe generatie verwijdert als de inloggegevens gecompromitteerd zijn.
Herstelvalidatie
- Zorg voor een schone staginghost.
- Herstel de database en bestanden van één geselecteerd herstelpunt.
- Start de exacte artifact/framework-combinatie die met de back-up is opgenomen.
- Log in als een normale speler en verifieer het personage, de inventaris, banen, huisvesting en machtigingen.
- Noteer de hersteltijd en ontbrekende afhankelijkheden, repareer vervolgens het back-upproces.
Een geplande “succes” betekent alleen dat de taak is afgesloten. Een voltooide herstelpoging is het bewijs.
