100 lines
4.5 KiB
Org Mode
100 lines
4.5 KiB
Org Mode
* Mise en place de MTSatellite pour un serveur déjà en place
|
|
** Résumé des étapes
|
|
- Installation des outils pour compiler MTSatellite (Gentoo)
|
|
- Création d'un deuxième serveur Minetest en parallèle du premier avec un backend en postgresql.
|
|
- Restauration de la BDD du premier serveur pour le second (map et players)
|
|
- Restauration des données de la map de l'ancienne instance
|
|
- Conversion de la map de la seconde instance vers levelDB
|
|
- Mise en place de MTSatellite (plusieurs étapes)
|
|
-
|
|
** Installation des outils pour compiler MTSatellite (Gentoo)
|
|
Nous sommes logué en tant que root sur notre serveur
|
|
#+BEGIN_EXAMPLE
|
|
-- Installation des packages nécessaires
|
|
# emerge -av go leveldb mercurial
|
|
#+END_EXAMPLE
|
|
|
|
Se loguer en tant qu'utilisateur minetest sur notre serveur
|
|
#+BEGIN_EXAMPLE
|
|
$ cd
|
|
$ go get -u bitbucket.org/s_l_teichmann/mtsatellite/cmd/mtdbconverter
|
|
$ go get -u bitbucket.org/s_l_teichmann/mtsatellite/cmd/mtredisalize
|
|
$ go get -u bitbucket.org/s_l_teichmann/mtsatellite/cmd/mtseeder
|
|
$ go get -u bitbucket.org/s_l_teichmann/mtsatellite/cmd/mtwebmapper
|
|
|
|
$ ls /home/minetest/go/bin
|
|
mtdbconverter mtredisalize mtseeder mtwebmapper
|
|
#+END_EXAMPLE
|
|
** Création d'un deuxième serveur Minetest
|
|
Nous sommes logué en tant qu'utilisateur minetest sur notre serveur
|
|
#+BEGIN_EXAMPLE
|
|
-- Récupération des sources du serveur nalc
|
|
$ cd
|
|
$ git clone --depth 1 https://sys4.fr/gitea/nalc/nalc-server.git nalc-1
|
|
|
|
-- Installation du serveur
|
|
$ cd nalc-1
|
|
$ ./install.sh --postgresql 0.4
|
|
(Suivez les instructions pour créer un nouveau serveur)
|
|
#+END_EXAMPLE
|
|
** Restauration de la BDD du premier serveur pour la nouvelle instance
|
|
Nous sommes logué en tant qu'utilisateur minetest sur notre serveur
|
|
#+BEGIN_EXAMPLE
|
|
-- Restauration de la dernière sauvegarde de la première instance (nalc-server-0.4.17-r1) vers la seconde (nalc-1)
|
|
$ cd
|
|
$ mkdir nalc-1/dumps
|
|
$ cd nalc-1/dumps
|
|
$ tar -xvf ~/nalc-server-0.4.17-r1/backup/data/dump_sql.tar
|
|
-- Efface les BDD créé par l'installation de la nouvelle instance
|
|
-- Dans le cas où vous vous êtes logué en jeux au moins une fois
|
|
$ dropdb nalc-1
|
|
$ dropdb players-nalc-1
|
|
-- Création de BDD vierges
|
|
$ createdb nalc-1
|
|
$ createdb players-nalc-1
|
|
-- Restauration des BDD de l'ancienne instance dans la nouvelle
|
|
-- (vérifiez que vous ayez assez d'espace disque dans /var)
|
|
$ su - postgres
|
|
$ pg_restore -d nalc-1 /home/minetest/nalc-1/dumps/nalc-0.4.17.dump
|
|
$ pg_restore -d players-nalc-1 /home/minetest/nalc-1/dumps/players-nalc-0.4.17.dump
|
|
$ logout
|
|
$ cd
|
|
$ rm -rf nalc-1/dumps
|
|
#+END_EXAMPLE
|
|
** Restauration des données de la map de l'ancienne instance
|
|
Cela dépendra du contexte, deux cas majeurs peuvent se présenter :
|
|
- Soit la nouvelle instance n'apporte pas de changements majeurs dans les fichiers de votre world (même version du serveur ou mise à jour très légère).
|
|
- Ou bien des changements majeurs sont apportés à l'occasion de l'installation d'une version plus récente de votre serveur.
|
|
*** Premier cas (même version)
|
|
Vous pouvez copier directement le dossier world ou bien la dernière sauvegarde de l'ancienne instance dans la nouvelle.
|
|
#+BEGIN_EXAMPLE
|
|
$ cd /home/minetest/nalc-1/minetest/worlds/nalc-1
|
|
$ cp -r /home/minetest/nalc-server-0.4.17-r1/minetest/worlds/nalc/* .
|
|
$ -- recréer le lien symbolique du world.mt qui vient d'être effacé
|
|
$ ln -s /home/minetest/nalc-1/world.mt
|
|
#+END_EXAMPLE
|
|
*** Deuxième cas (version mise à jour)
|
|
Il vous faudra procéder d'une façon différente.
|
|
Tout d'abord renommez le world de la nouvelle instance :
|
|
#+BEGIN_EXAMPLE
|
|
$ cd /home/minetest/nalc-1/minetest/worlds
|
|
$ mv nalc-1 nalc-1-old
|
|
#+END_EXAMPLE
|
|
Ensuite recréez un dossier vierge avec le même nom qu'avant renommage puis faites l'opération du premier cas.
|
|
#+BEGIN_EXAMPLE
|
|
$ mkdir nalc-1
|
|
$ cd nalc-1
|
|
$ cp -r /home/minetest/nalc-server-0.4.17-r1/minetest/worlds/nalc/* .
|
|
$ -- recréer le lien symbolique du world.mt qui vient d'être effacé
|
|
$ ln -s /home/minetest/nalc-1/world.mt
|
|
#+END_EXAMPLE
|
|
Ensuite ne copiez que les nouveaux fichiers et dossiers contenues dans le dossier renommé précédemment (nalc-1-old) vers votre dossier actuel (nalc-1) si ils n'y figurent pas déjà.
|
|
** Migration de la map de la seconde instance vers levelDB
|
|
Nous sommes logué en tant qu'utilisateur minetest sur notre serveur
|
|
#+BEGIN_EXAMPLE
|
|
$ cd
|
|
$ cd nalc-1/minetest/bin
|
|
$ ./minetestserver --migrate leveldb --world /home/minetest/nalc-1/minetest/worlds/nalc-1
|
|
#+END_EXAMPLE
|
|
** Mise en place de MTSatellite
|