Bonjour,
Voici un retour d’expérience sur l’installation d’Armbian Buster sur un odroid C4 équipé d’une carte eMMC, puis de l’installation de jeedom V4, avec la restauration d’une conf jeedom existante.
Cette doc s’inspire très fortement de la doc d’@akenad concernant l’installation d’Armbian Buster sur un odroid C2. La procédure d’installation diffère principalement dans le choix de l’image à installer sur la carte eMMC et de la partie migration jeedom ; plus quelques options qui sont totalement personnelles, et liées à une utilisation de l’Odroid pour d’autres usages.
A noter que, contrairement à l’installation de @akenad, je n’ai pas de carte d’extension reliées au GPIO ; je n’ai, pour la partie jeedom, que 2 dongles USB raccordés aux ports usb de l’Odroid.
si vous avez des cartes d’extensions reliées au GPIO, reportez-vous à sa doc pour ces spécificités.
Je vais pomper outrageusement sur la doc et le plan de de doc de @akenad.
Équipements et logiciels utilisés :
- PC Windows et BalenaEtcher
- adaptateur USB/eMMC
- Odroid-C4 avec mémoire eMMC hardkernel 32 Go
- Armbian Buster Kernel 5.9
- Jeedom V4
- Dongle USB Z-Wave+ Aeotec Z-Stick Gen5
- Dongle USB ConBee V2
Les étapes sont les suivantes :
- Préparation de l’eMMC
- Installation de Armbian Buster Kernel 5.9 sur l’eMMC
- Installation de l’eMMC sur l’Odroid-C4 et configuration du système
- Installation de Jeedom V4 sur l’Odroid-C4
- Sauvegarde ancienne installation
- restauration de Jeedom sur l’Odroid-C4
- spécificités liées au plugin Deconz et au dongle USB ConBee V2
- spécificités liées au plugin Z-Wave et au dongle USB Aeotec Z-Stick Gen 5
Préparation de l’eMMC
- Connecter l’eMMC sur l’adaptateur USB/eMMC.
- Connecter l’adaptateur sur le PC Windows.
Au 19/01/2021, j’ai supprimé le contenu de cette section
Elle consistait à supprimer les partitions déja existantes sur l’eMMC, à l’aide de diskpart, sous Windows.
C’était une opération délicate, qui en fait, n’est pas nécessaire : balenaEtcher écrase l’ancien partitionnement.
Installation de Armbian Buster Kernel 5.9 sur l’eMMC
La documentation de Armbian est ici : https://docs.armbian.com ; la doc dédiée à l’odroid-c4 est ici : Odroid C4 – Armbian.
Dans cette dernière page, se rendre dans la section ‹ Recommended download ›, et choisir Buster - stable - 5.9.y ; au 12/12/2020, ceci va télécharger le fichier Armbian_20.11.1_Odroidc4_buster_current_5.9.12.img.xz
- Désarchiver ce fichier avec 7-zip.
- Flasher le fichier image (.img) résultant sur l’eMMC avec l’utilitaire balenaEtcher ici : balenaEtcher - Flash OS images to SD cards & USB drives
(balenaEtcher crée une partition EXT4 d’environ 2 Go et le reste est « Non alloué ») - Ejecter l’adaptateur USB/eMMC.
Installation de l’eMMC sur l’Odroid-C4 et configuration du système
- Connecter l’eMMC sur l’Odroid-C4.
Eventuellement pour suivre les sorties consoles, connecter écran HDMI et clavier USB mais ce n’est pas indispensable. C’est même plus compliqué, car le clavier sera reconnu en qwerty ; dans ce cas, faire attention aux mots de passe.
- Brancher le cable réseau puis le cordon d’alimentation.
Lors du premier démarrage, la partition système qui était environ de 2 Go est automatiquement étendue au maximum de la capacité de l’eMMC.
Si tout se passe bien, au bout d’une minute, l’Odroid-C4 est visible sur le réseau.
Trouver l’adresse IP allouée par le serveur DHCP à l’Odroid-C4 en consultant le serveur DHCP (la Box Internet si c’est le serveur DHCP) ou par exemple avec l’outil NMAP.
Accéder par SSH (par exemple avec Putty sous Windows) en root (mot de passe : 1234).
Au premier login il est demandé de changer le mot de passe de root et de créer un utilisateur (qui sera « sudo enable ») :
Changer le mot de passe de root.
Comme demandé, créer un utilisateur. Cet utilisateur aura le droit de passer administrateur ; @akenad propose comme nom d’utilisateur jeedom ; un autre nom est possible.
Appuyer plusieurs fois sur la touche ENTER.
Pour configurer quelques éléments système lancer la commande :
# armbian-config
Nous allons configurer la TimeZone, le Hostname, le clavier, et mettre éventuellement une adresse IP fixe (ce n’est pas mon option ; je positionne l’IP en DHCP, dans mon routeur) :
- option Personal :
Timezone : Europe Paris
Locales : ajouter fr_FR.UTF8, puis choisir cela comme défaut
Keyboard : choisir PC générique 105 touches (internat.). Puis Francais, puis Francais, puis Disposition par défaut
Hostname : choisir un nom qui vous convient. Ne prendre que des caractères simples pour ce nom. - option Network :
IP static (pour ceux qui ne veulent pas utiliser DHCP)
Redémarrer l’Odroid pour que l’ensemble de ces options soient valides.
# reboot
Je suppose que vous vous connectez maintenant avec le compte utilisateur prédédent.
Si vous avez indiqué un mot de passe simple pour les comptes root et le compte utilisateur, il faut maintenant impérativement les modifier, avec un mot de passe plus compliqué :
~$ passwd
Changement du mot de passe pour xxxxxxxx.
Current password:
Nouveau mot de passe :
Retapez le nouveau mot de passe :
passwd: password updated successfully
$ sudo passwd
[sudo] Mot de passe de xxxxxxxx : // il s agit du nouveau mot de passe que vous venez de saisir
Nouveau mot de passe :
Retapez le nouveau mot de passe :
passwd: password updated successfully
On met à jour le système :
su -
# apt update && apt upgrade
Maintenant, on a un système opérationnel.
Installation de Jeedom V4
On va exécuter la procédure d’installation de jeedom ; ceci va installer jeedom, et tout ce qui est nécessaire à son fonctionnement.
Connexion SSH avec le compte utilisateur, et passage en root :
$ su -
/!\ ATTENTION : le tiret est très important. (la raison est expliquée ici : [RTEX] Debian 10 - Buster - netinst - amd64 - Jeedom V4)
La documentation officielle de l’installation de Jeedom est ici : https://doc.jeedom.com/fr_FR/installation/cli
Installation en ligne de commande :
# wget https://raw.githubusercontent.com/jeedom/core/master/install/install.sh
# chmod +x install.sh
# ./install.sh
Sauvegarde ancienne installation
Depuis l’interface web de jeedom, onglet Réglages, choisir Système, puis Sauvegardes.
Cliquer sur Lancer une sauvegarde ; attendre la fin de la procédure. C’est rapide, 2 ou 3 mn.
Les backups de jeedom se trouvent dans /var/www/html/backup/ ; recopier ce dernier backup dans le dossier /var/www/html/backup/ du nouveau système
Faire également un backup de la configuration de la clé ConBee :
. ouvrir une page de navigateur à l’adresse http://192.168.x.y:8484/ (192.168.x.y correspond à l’adresse IP du jeedom)
. Menu - Settings - Show Advanced Settings . Cliquer sur ‹ Save Configuration ›. Ceci va télécharger le fichier de backup sur votre ordinateur.
chez moi, le nom de fichier est raspbee_gateway_config_AAAA-MM-JJ.dat
Note : ceci est une précaution. Ce fichier est identique au fichier qui se trouve dans /var/www/html/plugins/deconz/data, d’extension .tar.gz, qui est écrit tous les jours par jeedom et qui fait partie de son backup
Arreter ce serveur : onglet Réglages, choisir Système, puis Eteindre.
restauration de Jeedom
sur l’odroid c4, vérifier que /var/www/html/backup/ contient bien le backup précédent.
rendre www-data propriétaire du backup :
# chown www-data:www-data /var/www/html/backup/*
Si d’autres fichiers de backup sont présents dans ce dossier, il faut les sauvegarder ailleurs ; ce dossier ne doit contenir que le backup souhaité.
Lancer la restauration du backup ; ceci est rapide : moins d’une minute.
# php /var/www/html/install/restore.php
[START RESTORE]
***************Début de la restauration de Jeedom 2020-12-16 18:59:37***************
Envoi l'évènement de début de restauration...OK
Vérification des droits...OK
Fichier utilisé pour la restauration : /var/www/html/install/../backup/backup-VMjeedom-4.0.61-2020-12-16-18h07.tar.gz
Backup database access configuration...Can not copy /var/www/html/install/../core/config/common.config.php
OK
Disable all task OK
...
Temps de la restauration : 9s
***************Fin de la restauration de Jeedom***************
[END RESTORE SUCCESS]
# reboot
Vérifiez maintenant que vous pouvez vous connecter à l’interface web de jeedom. Pour le moment, les plugins Z-wave et Deconz ne fonctionnement pas.
Voir la suite
spécificités liées au plugin Deconz et au dongle USB ConBee V2
concernant le plugin
Ce plugin a besoin de dépendances pour fonctionner ; celles-ci ne font pas partie de la procédure de backup-restore jeedom.
. Dans la page de configuration du plugin, dans la section Dépendances, cliquer sur Relancer ; ceci va installer les dépendances nécessaires.
Si le démon ne s’est pas relancé quelques minutes après la fin de cette procédure, cliquer sur le bouton Redémarrer de la section Démon
. dans la section Configuration - Installation Deconz local, cliquer sur Lancer
concernant le dongle :
ou plutot, l’environnement logiciel de la clé (démon deconz) : il faut restaurer la configuration, que l’on a sauvegardé auparavant.
. ouvrir une page de navigateur à l’adresse http://192.168.z.w:8484/ (192.168.z.w correspond à l’adresse IP de l’odroid c4)
. ceci redirige vers phoscon il faut cliquer sur la clé Phoscon-GW, redéfinir le nom, et choisir un mot de passe.
La configuration de la clé est vierge ; il ne faut rien créer.
Menu - Passerelle - Options de sauvegarde. Cliquer sur le bouton Sauvegarde de la charge ; suivant. Choisir le fichier sauvegardé auparavant.
Par exemple, raspbee_gateway_config_AAAA-MM-JJ.dat , puis valider en cliquant sur le bouton Sauvegarde de la charge
. redémarrer l’odroid c4
. vérifier dans phoscon que la clé a retrouvé sa config.
. controler dans jeedom le réseau DeConz
spécificités liées au plugin Z-Wave et au dongle USB Aeotec Z-Stick Gen 5
concernant le dongle :
C’est un dongle qui a plusieurs années, et qui fonctionnait très bien avec l’odroid c2. Malheureusement, il n’était plus reconnu par le système de l’odroid c4.
C’est un problème similaire à celui rencontré avec le Rpi4 ; voir par exemple cette discussion : Compatibilité AEOTEC Zstick Gen 5 et RPI4B
Je l’ai réglé en raccordant le dongle à l’odroid par l’intermédiaire d’un hub USB non alimenté.
Je compte acheter plus tard une nouvelle clé Z-Stick Gen5+, pour éliminer ce hub
concernant le plugin
Ce plugin a besoin de dépendances pour fonctionner ; celles-ci ne font pas partie de la procédure de backup-restore jeedom.
Dans la page de configuration du plugin, dans la section Dépendances, cliquer sur Relancer ; ceci va installer les dépendances nécessaires.
Si le démon ne s’est pas relancé quelques minutes après la fin de cette procédure, cliquer sur le bouton Redémarrer de la section Démon