Factorio Intermédiaire 10 min de lecture

Sauvegarder et restaurer un serveur Factorio : autosaves, backups et retour en arrière

Protéger une usine Factorio sur serveur dédié : autosave_interval et autosave_slots, fichiers _autosaveN.zip, /server-save, --start-server-load-latest, backups automatiques (cron) et restauration d'une ancienne sauvegarde pas à pas.

Sauvegarder et restaurer un serveur Factorio : autosaves, backups et retour en arrière

Sauvegarder et restaurer un serveur Factorio : autosaves, backups et retour en arrière

Un train qui fonce dans votre réseau de tuyaux, un blueprint collé au mauvais endroit, un mod qui corrompt la partie après une mise à jour… Sur un serveur partagé, il faudra un jour revenir en arrière. Ce guide explique comment Factorio sauvegarde un serveur dédié, comment garder des copies sûres, et comment restaurer proprement une ancienne version de l’usine.

💾 Sauvegardes automatiques incluses

Votre usine Factorio à l'abri

Notre offre hébergeur Factorio inclut des sauvegardes automatiques en plus des autosaves du jeu. Dès 6,90 €/mois (4 Go RAM) ou 11,90 €/mois (8 Go RAM). SSD NVMe, Ryzen 9 5950X, support FR 24/7.

Voir l'offre Factorio →

Comment un serveur Factorio sauvegarde

Un serveur dédié écrit la partie de trois façons :

MécanismeQuandFichier écrit
Sauvegarde à l’arrêtArrêt propre du serveur (Ctrl+C, SIGINT)Le fichier chargé au démarrage
AutosaveToutes les autosave_interval minutes_autosave1.zip, _autosave2.zip… dans saves/
Sauvegarde forcéeCommande /server-save d’un adminLa sauvegarde de la partie en cours

Les autosaves tournent en rotation : avec autosave_slots: 5, le serveur écrit _autosave1.zip puis _autosave2.zip… jusqu’à _autosave5.zip, puis recommence en écrasant _autosave1.zip.

Conséquence : avec les réglages par défaut (10 minutes × 5 slots), les autosaves ne couvrent que les 50 dernières minutes. Pour revenir à l’usine d’hier, il faut des backups externes (voir plus bas).


Régler les autosaves

Dans server-settings.json :

"autosave_interval": 10,
"autosave_slots": 5,
"autosave_only_on_server": true,
"non_blocking_saving": false,
CléRôleDéfautConseil
autosave_intervalMinutes entre deux autosaves1010 pour une petite usine, 15-20 si chaque sauvegarde fige la partie
autosave_slotsNombre de fichiers autosave en rotation5Montez à 10-12 pour couvrir plusieurs heures
autosave_only_on_serverAutosave côté serveur seulement, pas chez les clientstrueLaissez true
non_blocking_savingLinux : le serveur se fork pour sauvegarder sans bloquerfalseQualifié par Wube de « hautement expérimental », avec un risque de perte des sauvegardes

À chaud, sans redémarrer :

/config set autosave-interval 15

Chaque sauvegarde fige brièvement la partie pour tous les joueurs, le temps d’écrire le fichier. Sur une très grosse usine, ça dure plusieurs secondes : c’est normal, et c’est pour ça qu’on espace les autosaves plutôt que de les multiplier. Pour réduire ces gels, voir aussi optimiser les UPS d’un serveur Factorio.


Le piège du redémarrage : charger la bonne sauvegarde

C’est le problème n°1 signalé sur les forums : le serveur redémarre sur une vieille version de l’usine.

Explication :

  • avec --start-server mon-usine.zip, le serveur charge ce fichier précis, et c’est aussi là qu’il écrit la sauvegarde à l’arrêt ;
  • après un arrêt propre, pas de souci : mon-usine.zip est à jour ;
  • après un crash, un kill -9 ou une coupure de courant, mon-usine.zip n’a pas été réécrit. La progression récente n’existe que dans les _autosaveN.zip… et le serveur recharge l’ancien fichier.

La solution recommandée par la modération du forum officiel :

./bin/x64/factorio --start-server-load-latest \
  --server-settings ./data/server-settings.json

--start-server-load-latest charge la sauvegarde la plus récente disponible, qu’il s’agisse du fichier principal ou d’une autosave.

Sur un service systemd, ajoutez KillSignal=SIGINT pour que l’arrêt du service provoque une sauvegarde propre. Exemple complet dans installer un serveur Factorio headless.


Faire une sauvegarde manuelle avant une opération risquée

Avant une mise à jour du jeu, l’ajout d’un mod ou une grosse restructuration de l’usine :

  1. En jeu ou dans la console serveur, forcez une sauvegarde :

    /server-save
  2. Copiez le fichier ailleurs, avec la date :

    cp /opt/factorio/saves/mon-usine.zip ~/backups/mon-usine-avant-maj-$(date +%F).zip

Sur un hébergeur, téléchargez simplement le .zip via le gestionnaire de fichiers ou SFTP.

Pour tester un mod ou une commande Lua, travaillez sur une copie : une commande /c désactive définitivement les succès de la sauvegarde.


Automatiser des backups externes (headless Linux)

Les autosaves protègent contre une erreur récente. Les backups protègent contre tout le reste : corruption, suppression accidentelle, panne disque. Un script simple :

#!/bin/bash
# /opt/factorio/backup.sh
SRC=/opt/factorio/saves
DEST=/backups/factorio
mkdir -p "$DEST"
tar -czf "$DEST/factorio-$(date +%F-%H%M).tar.gz" -C "$SRC" .
# Garde 14 jours de backups
find "$DEST" -name 'factorio-*.tar.gz' -mtime +14 -delete
chmod +x /opt/factorio/backup.sh
crontab -e
# Toutes les 6 heures
0 */6 * * * /opt/factorio/backup.sh

Pensez aussi à sauvegarder les fichiers de configuration qui ne sont pas dans saves/ : data/server-settings.json, server-adminlist.json, server-whitelist.json et le dossier mods/ (avec mod-list.json et mod-settings.dat).

Règle d’or : un backup stocké sur le même disque que le serveur n’est pas un backup. Copiez régulièrement l’archive ailleurs (autre machine, stockage externe).


Restaurer une ancienne sauvegarde (rollback)

1. Prévenir les joueurs et arrêter le serveur

Toute progression après le point de restauration sera perdue.

sudo systemctl stop factorio

2. Mettre de côté l’état actuel

On ne supprime rien, au cas où il faudrait revenir en arrière… sur le retour en arrière :

cd /opt/factorio
mkdir -p saves-avant-rollback
cp saves/*.zip saves-avant-rollback/

3. Choisir la sauvegarde à restaurer

ls -lt saves/

L’option -t trie par date : repérez l’autosave ou le backup d’avant l’incident. Pour un backup externe, décompressez l’archive tar.gz et récupérez le .zip voulu (ne décompressez pas le .zip lui-même).

4. Lancer ce fichier précis

Copiez la sauvegarde choisie sous un nom clair, puis démarrez explicitement sur ce fichier :

cp saves/_autosave3.zip saves/mon-usine-restauree.zip
./bin/x64/factorio --start-server ./saves/mon-usine-restauree.zip \
  --server-settings ./data/server-settings.json

⚠️ N’utilisez pas --start-server-load-latest pour une restauration : il reprendrait le fichier le plus récent, c’est-à-dire justement celui que vous voulez abandonner. Une fois la partie restaurée et vérifiée, arrêtez proprement le serveur et reprenez votre commande de démarrage habituelle.

5. Vérifier

Connectez-vous, contrôlez que l’usine est dans l’état attendu, puis faites un /server-save.


Restaurer une sauvegarde sur un autre serveur ou en local

Une sauvegarde Factorio est un fichier .zip autonome : il se charge sur n’importe quel serveur ou PC ayant la même version (ou plus récente) du jeu et les mêmes mods. Pour la jouer en solo, placez-la dans %appdata%\Factorio\saves sous Windows. Détails dans transférer une partie solo sur un serveur Factorio.


FAQ

Où sont les autosaves d’un serveur Factorio ?

Dans le dossier saves/ du serveur, sous les noms _autosave1.zip, _autosave2.zip, etc.

Pourquoi mon serveur a-t-il perdu la dernière heure de jeu ?

Le serveur a probablement été coupé brutalement (crash, arrêt forcé) puis relancé avec --start-server fichier.zip, qui a rechargé l’ancien fichier. Les autosaves récentes sont peut-être encore dans saves/ : restaurez la plus récente et passez à --start-server-load-latest.

/server-save accepte-t-il un nom de fichier ?

Le wiki officiel la décrit comme une simple commande qui « sauvegarde la partie sur le serveur », sans paramètre. Pour garder une copie nommée, copiez le fichier ensuite.

Peut-on restaurer une sauvegarde d’une version plus récente ?

Non. Une sauvegarde s’ouvre dans la même version ou une version plus récente du jeu, jamais dans une version plus ancienne. Mettez d’abord le serveur à jour.

Les sauvegardes contiennent-elles les mods ?

Non. La sauvegarde référence les mods utilisés, mais ne contient pas leurs fichiers. Sauvegardez aussi le dossier mods/.


Conclusion

Trois habitudes suffisent à ne jamais perdre votre usine : démarrer avec --start-server-load-latest, augmenter autosave_slots pour couvrir plusieurs heures, et garder des backups datés hors du serveur. Pour restaurer, arrêtez le serveur, copiez l’ancienne sauvegarde sous un nouveau nom et lancez-la explicitement avec --start-server.

Serveur Factorio avec sauvegardes automatiques chez HebergTonServ →

Pour aller plus loin

Sources : server-settings.example.json (wube/factorio-data), wiki Factorio — Multiplayer, wiki Factorio — Console, wiki Factorio — Command line parameters, forum officiel — emplacement des autosaves.