Sauvegardes et mises à jour
Copies du monde
Sauvegarder maintenant en fait une tout de suite. Pendant ce temps le serveur cesse d’enregistrer le monde automatiquement, pour que l’archive soit un monde entier et non la moitié de deux.
Les copies peuvent aussi se faire selon un horaire — toutes les tant de minutes, en en gardant tant — depuis Installer et lancer.
Restaurer la sauvegarde choisie remet une copie en place. Le monde qui est là n’est pas supprimé : il est renommé en world_before_restore suivi de la date. Si la copie n’était pas la bonne, rien n’est perdu.
Changer le cœur
Mettre à jour le cœur du serveur installe la version choisie et laisse le monde en place.
Recréer le serveur est la même installation, mais le monde repart de zéro. L’ancien n’est pas supprimé non plus : il est renommé en world_before suivi de la date, avec le Nether et l’End.
L’ordre des étapes est choisi pour qu’un échec soit sans conséquence. Le fichier est téléchargé sur le serveur lui-même, sans passer par votre connexion domestique, et vérifié par sa somme de contrôle. Le serveur n’est arrêté qu’ensuite. L’ancien cœur est renommé avec son propre nom, la date et .bak : revenir en arrière tient en un geste.
L’état du service est relu juste avant l’échange plutôt que repris de l’écran : sinon le fichier pourrait être remplacé sous un serveur en marche et l’opération déclarée réussie pendant qu’il tourne encore sur l’ancien code. Un serveur qui était arrêté le reste. S’il ne repart pas, le programme le dit et nomme le fichier vers lequel revenir.
La version est lue dans le cœur lui-même, dans le version.json à l’intérieur du jar. C’est la seule réponse qui ne vieillit pas : le journal tourne à minuit et perd la ligne, une note de la dernière installation ment si le fichier a été remplacé à la main, mais le fichier est toujours celui qui va démarrer.
Quels cœurs se mettent à jour
Mojang, Paper et Fabric. Tous trois publient un fichier fini derrière un lien direct, qu’on peut télécharger et mettre en place. Chez Fabric ce n’est pas un installateur mais un petit programme de démarrage du serveur qui va chercher le reste au premier démarrage ; les mods du dossier ne sont pas touchés quand la version du chargeur change.
Forge non, et la raison mérite d’être connue. Depuis la 1.17 un serveur Forge ne démarre pas par un jar mais par une liste d’arguments dont le chemin contient la version de Forge. Le mettre à jour change la ligne de commande dans le fichier de service, et ce fichier appartient à root. La difficulté n’est pas dans les fichiers temporaires : c’est qu’après la mise à jour, le serveur doit être démarré autrement.
Le panneau lui-même
Le programme regarde de lui-même si une nouvelle version est sortie et affiche un bandeau le cas échéant, avec ce qu’elle apporte. Mettre à jour l’installe et redémarre ; Plus tard laisse les choses en l’état jusqu’à la prochaine fois.