Bonjour à tous, c’est akenad ,
Aujourd’hui je vais vous présenter un retour d’expérience sur le passage de la Jeedom Smart en Buster/Jeedom V4 par la méthode du Recovery mode (aka Restauration en mode usine) et mise à jour du Kernel.
La méthode à privilégier reste la méthode officielle de Jeedom SAS dite de la « Restauration image », qui se lance depuis l’IHM Jeedom.
La méthode du Recovery mode utilisée dans ce RTEX est l’autre méthode officielle de Jeedom SAS, qui peut être utilisée en cas de problème avec la première méthode.
/!\ ATTENTION : Pour utilisateur avancé, à vos risques et périls.
Ce RTEX a 2 intérêts :
- il explique comment vérifier si l’image téléchargée n’a pas été corrompue lors du téléchargement.
- il explique comment mettre à jour le Kernel avant de suivre la méthode du Recovery mode officielle de Jeedom SAS
En effet, la méthode de la « Restauration image » (qui se lance depuis l’IHM Jeedom) met à jour le Kernel, alors que la méthode du Recovery mode ne le fait pas.
La différence se voit dans la page Santé Jeedom , « Version OS » : 3.14.79-94 versus 3.16.85+
(Plus de détails ici : [Présentation] akenad - #10 par akenad)
Nota :
- Exporter au préalable les sauvegardes de Jeedom.
- Depuis le 04/01/2020, à partir de Jeedom v4.0.62, la migration buster + kernel est automatisée avec la méthode de la « Restauration image », appelé aussi « mise à jour facile » ou « migration en un clic ») : https://doc.jeedom.com/fr_FR/howto/migrationos.smart
- Buster sur Smart est vivement recommandé pour les plugin-rfxcom et plugin-zigbee.
Depuis le 24/11/2020 une Smart sur laquelle on procède à un Recovery mode (aka Restauration en mode usine) passe par défaut en Buster/Jeedom V4 (mais sans mettre à jour le kernel) en suivant la documentation officielle de Jeedom SAS ici : https://doc.jeedom.com/fr_FR/installation/smart
Télécharger l’image (Buster/Jeedom V4) « backupJeedom.tar.gz » et le kernel associé (3.16.85+) « kernel.tar.gz » ici : Index of /smart
Nota : Si vous optez pour un téléchargement avec un navigateur, cela semble mieux fonctionner actuellement avec Chrome ou Microsoft Edge Chromium qu’avec Firefox (bien vérifier le hash de l’image, voir plus bas).
Avant d’effectuer le recovery mode nous allons copier le nouveau kernel dans l’eMMC de la Smart. C’est ce kernel qui sera ensuite utilisé lors du recovery mode.
Préparation de la mise à jour du Kernel :
Sur un PC sous windows, décompresser kernel.tar.gz
Copier le dossier /mb_kernel à la racine d’une clé USB
Se connecter en SSH sur la smart en root.
Brancher la clé sur la Smart et monter la clé :
root@jeedom:~# mount /dev/sda1 /mnt
Copier le contenu du dossier /mb_kernel de la clé dans le dossier /mb_kernel de la Smart :
root@jeedom:~# cp -r /mnt/mb_kernel /media/boot/multiboot
Démonter la clé et débrancher la clé :
root@jeedom:~# umount /mnt
Rebrancher la clé sur le PC.
Supprimer le dossier /mb_kernel
Copier l’image backupJeedom.tar.gz.
Vérifier le hash SHA256 de l’image sur la clé,
par exemple avec Windows PowerShell (d’autre outils existent ce n’est pas l’objet de ce sujet).
Ici la clé est sur l’unité F:
CertUtil -hashfile F:\backupJeedom.tar.gz SHA256
On constate rapidement visuellement que les hash SHA256 sont identiques.
Nous pouvons maintenant procéder au recovery mode proprement dit.
Opérations à réaliser :
- éteindre la Smart via le menu de Jeedom
- retirer tous les périphériques et clés USB
- laisser le câble réseau branché
- brancher la clé USB (contenant backupJeedom.tar.gz)
- brancher un écran sur le port HDMI et un clavier USB
- débrancher puis rebrancher l’alimentation
Des messages apparaissent sur l’écran :
- si « BACKUP ARCHIVE FOUND », n’apparaît pas à l’écran, c’est mauvais signe, cela veut dire probablement que le boot sur l’eMMC n’a pas trouvé backupJeedom.tar.gz sur la clé.)
- si le message « This does not look like a tar archive » n’apparaît pas à l’écran, c’est mauvais signe, cela veut dire probablement que l’image est corrompue suite à un téléchargement incorrect.
(après téléchargement, bien vérifier le hash de backupJeedom.tar.gz sur la clé) - si l’écran devient noir (environ au bout de 10 mn), appuyer sur la barre d’espace pour faire réapparaitre l’affichage.
Sur la clé USB (et si ce n’est pas le cas c’est mauvais signe) :
- le fichier backupJeedom.tar.gz est renommé en backupJeedom.tar.gz.installed pour éviter de relancer un autre recovery mode après le reboot.
- un fichier install.log a été créé, traçant les étapes du recovery mode : « PREPARE CARD, INSTALL BOOT, INSTALL JEEDOM, PREPARE JEEDOM BOOT, INSTALL MULTIBOOT SUPPORT »
La Smart reboot.
Si Debian 8 ou 9 apparaît à l’écran au lieu de Debian 10, c’est mauvais signe, cela veut dire que le recovery n’a pas été réalisé :
Jeedom est maintenant accessible par le réseau.
(si ce n’est pas le cas, et qu’après un redémarrage de la Smart, la led est bleue fixe, c’est mauvais signe, cela peut vouloir dire que la partition de boot de l’eMMC à été altérée par le recovery).
Nota : le compte « jeedom » n’existe plus. Pour se connecter à la console ou en SSH, utiliser le compte root.
Il se peut que l’adresse IP de la Smart aie changée. Elle peut être retrouvée :
- en consultant les baux du serveur DHCP (par défaut la box Internet)
- sinon un scan sur le réseau avec un outil comme nmap/Zenmap
- sinon en se connectant sur la console locale de la JeedomSmart (brancher écran HDMI et clavier USB), puis commande :
# sudo ip a
Page Santé Jeedom :
Version OS : Linux Jeedom 3.16.85+ #1 SMP PREEMPT Mon Jul 13 14:40:04 UTC 2020 aarch64 GNU/Linux [10.4]
( => Kernel 3.16.85)
Plus d’infos sur version OS : [Présentation] akenad - #10 par akenad
Concernant la liste des sources de paquets (certains dépôts utilisés lors de l’installation de dépendances de plugins), j’ai conservé debian buster (updates et security) (main, contrib, non-free) et j’ai (à ce stade) désactivé les dépôts « jeedom », "meveric"et « deb-multimedia ».
(A vous de voir si vous estimez en avoir besoin, Jeedom SAS déconseille de désactiver le repo jeedom)
cat /etc/apt/sources.list
Ligne en commentaire (ajout d’un dièse au début de la ligne) :
#deb http://repo.jeedom.com/odroid/ stable main
dans :
ls -ial /etc/apt/sources.list.d
J’ai renommé chaque fichiers en .bak.
Voila j’espère que ce retour d’expérience sera utile aux membres Jeedom.
akenad