Ce tutoriel va nous permettre de télécharger, sauvegarder, et réinjecter les fichiers de fonctionnement de l’intégration zigbee2mqtt lors d’une réinstallation de Gladys afin d’éviter de réappairer tous vos devices. (perso j’en ai une quarantaine).
Attention cela demande pas mal de manipulations.
Pour l’instant ce tutoriel est destiné aux utilisateur sous un système Windows.
Prérequis:
- Avoir une machine virtuel sous linux
- Savoir se connecté en SSH à son instance Gladys
Installation d’une machine virtuel Linux:
Il faut activer le sous-système Windows pour Linux:
- Appuyez sur la touche Windows + R puis tapez : optionalfeatures.exe puis appuyez sur Entrée
- Faites défiler vers le bas puis cochez:
– Sous-système Windows pour Linux
– PLateforme de l’hyperviseur Windows
– Plateforme d’ordinateur virtuel
Puis cliquez sur OK.
On vous demande de faire une mise à jour, il faut la faire.
En cas de problème vous pouvez vous allez voir ici.
Après le redémarrage, on va installer WSL2.
- Téléchargez le package :
Package de mise à jour du noyau Linux WSL2 pour machines x64 - Exécutez le package de mise à jour que vous venez de télécharger.
- définir WSL 2 comme version par défaut avec la commande suivante
– Appuyez sur la touche Windows + R puis tapez : wsl --set-default-version 2 puis appuyez sur Entrée.
Il ne vous reste plus qu’à télécharger une distribution Linux dans le store de Microsoft.
Mois j’ai choisi Ubuntu 18.04 LTS.
En cas de problème vous pouvez vous allez voir ici..
Maintenant que vous avez installer votre poste virtuel linux, on va commencer la procédure.
-
Se connecter en SSH à son instance Gladys:
ssh [Nom d'utilisateur]@gladys
-
Arrêt du container zigbee2mqtt
docker stop gladys-z2m-zigbee2mqtt
-
Connection root
sudo su
Puis:
/home/[Nom d'utilisateur]
-
Création de l’archive compressé du dossier complet zigbee2mqtt dans le dossier /home/utilisateur du RPI
tar -zcvf zigbee2mqtt_z2m.tar.gz /var/lib/gladysassistant/zigbee2mqtt/z2m
-
sortir du root:
exit
-
Re-démarrage du container zigbee2mqtt:
docker start gladys-z2m-zigbee2mqtt
Puis se déconnecter de la console SSH.
Maintenant que l’archive est créé, on va la récupérer directement dans notre PC.
Par exemple dans le dossier « Téléchargement »
Pour connaître le chemin d’accès exacte (avec les majuscules); ouvrez votre explorateur de fichiers et faite un clic droit sur le dossier « Téléchargements », puis « Propriétés » et cliquez sur l’onglet « emplacement »
Voici mon chemin d’accés:
« C:\Users\vince\Downloads »
-
Redémarrer votre console SSH et se positionner dans le dossier:
cd /mnt/c/Users/vince/Downloads/
Pour William c’est ça, avec comme résultat:
-
Ensuite entrer la commande:
scp [Nom d'utilisateur]@gladys:/home/[Nom d'utilisateur]/zigbee2mqtt_z2m.tar.gz /mnt/c/Users/willi/Downloads/
/home/william/ => remplacer par le chemin de l’archive créer précédemment sur le RPI
/mnt/c/Users/willi/Downloads/ => chemin où tu veut copier ton archive
Voici le résultat dans votre dossier:
Prochaine étape, transférer vos fichiers dans votre nouvelle instance Gladys.
Pour ma part, je passe d’une carte SD vers un SSD.
Attention, il va falloir restaurer la base de données de Gladys. Soit avec Gladys plus soit en ayant sauvegarder votre base de données.
Je vous conseil vivement d’utiliser Gladys plus pour plus de facilité.
Voire ce topic Offre limitée : Gladys Plus à -50% pendant 1 an ! 🤩
Sur votre nouvelle instance restaurer votre base de données de Gladys mais ne pas réactiver l’intégration zigbee2mqtt.
-
Redémarrer le terminal Ubuntu de Windows
-
Dans un premier temps avec le terminal Ubuntu de Windows se placer dans le dossier où est stocké l’archive zigbee2mqtt. Dans le cas de William le dossier "téléchargements de son pc.
-
Entrez la commande
scp dossier.tar.gz [nomutilisateur]@adresseip:~/
~/ => correspond au dossier /home/utilisateur de linux
Ce qui donne
Le dossier est copié dans le dossier /home/utilisateur, il reste plus qu’à le décompresser dans le bon dossier c’est à dire dans \var\lib\gladysassistant\zigbee2mqtt\z2m
Pour simplifier la chose on va déjà décompresser l’archive et copier uniquement les 3 fichiers. Pas besoin de copier tous les logs.
-
Se reconnecter en SSH à son instance Gladys:
ssh [Nom d'utilisateur]@gladys
-
Pour vérifier si votre archive est bien présente:
ls
L’archive à bien été copier -
Entrez la commande pour décompresser l’archive
tar -zxvf zigbee2mqtt_z2m.tar.gz
Maintenant on va juste copier les 3 fichiers configuration.yaml, coordinator_backup.json et database.db dans le dossier \var\lib\gladysassistant\zigbee2mqtt\z2m\
- Dans le terminal passer en root avec la commande
sudo su
- Création des dossiers zigbee2mqtt et z2m avec les commandes suivantes:
mkdir /var/lib/gladysassistant/zigbee2mqtt
mkdir /var/lib/gladysassistant/zigbee2mqtt/z2m
- Copier les 3 fichiers avec les commandes suivantes:
cp var/lib/gladysassistant/zigbee2mqtt/z2m/configuration.yaml /var/lib/gladysassistant/zigbee2mqtt/z2m/
cp var/lib/gladysassistant/zigbee2mqtt/z2m/coordinator_backup.json /var/lib/gladysassistant/zigbee2mqtt/z2m/
cp var/lib/gladysassistant/zigbee2mqtt/z2m/database.db /var/lib/gladysassistant/zigbee2mqtt/z2m/
- Maintenant brancher votre clef zigbee et activer le service
Ce tuto a été rédiger avec l’aide de @_Will_71.
Cette solution, est à adapter si vous utiliser un NAS ou autre mais je ne suis pas en mesure de vous dire quoi faire.
N’hésitez pas à poser vos questions on essayera d’y répondre.