Les Carnets de Byfeel domotique , Objets connectés , DIY , Programmation, Nouvelles Technologies ….

Jeedom : Installation Odroid C2 + debian 9 + php 7

J ai profité de cet été pour mettre à jour ma box jeedom , cela fait plus d’un an qu’elle tourne sous debian 8 et php 5   Il était temps de la faire évoluer. Dans cet article , je vais expliquer comment installer Jeedom sur une plateforme Odroid C2 , avec Debian en version 9 et PHP 7. Mes précédents articles qui traitaient de ce sujet sont devenus en grande partie obsolète.

  • Sauvegarde du Jeedom existant ( si votre box est déjà fonctionnel )
  • Installation de Debian / configuration
  • Installation Jeedom
  • Récupération des données de l’ancien Jeedom
  • Conclusion

Sauvegarde Jeedom Existant 

Avant de commencer , il faut effectuer une sauvegarde de votre jeedom existant , pour cela il faut :

  • Aller dans le menu sauvegarde de Jeedom et lancer un backup
  • uploader cette sauvegarde et la mettre en lieu sûr.
  • Par sécurité , vous pouvez aussi réaliser une copie de sauvegarde de votre système existant. Sous Windows , il est possible d’utiliser le programme Win32 disk imager , sous mac il suffit d’ouvrir la fenêtre du terminal et de taper les commandes suivantes :
// la commande diskutil , afin de repérer sa carte SD
diskutil list

// si SDcard en disk3
sudo dd if=/dev/disk3 of=~/BackupCarteSD.dmg

// Une copie bit à bit de votre carte sera envoyé dans votre dossier personnel ( attention environ 30 mn pour 8 Go )

Installation de Debian 9 ( Stretch ) / Configuration

Les sauvegarde, en lieux sur , je récupère  l’image sur le site Armbian : https://www.armbian.com/odroid-c2/
J’ai le choix , entre la version legacy ou mainline , je choisis la version mainline plus dédié à une utilisation en mode serveur ( le bureau n’est pas installé ). La version Mainline , existe avec une option desktop ( qui permet de lancer un bureau léger , si besoin ) , travaillant en ssh , je n’ai pas utilité de ce bureau.

Pour plus de détail  , il y a  la documentation officiel : lhttps://docs.armbian.com/User-Guide_Getting-Started/ 

Pour transférer l’image sur la carte SD , j’utilise le programme ETCHER (disponible sur toutes les plateformes ).
Une fois la carte installé , je demarre l’odroid, on se logue en ssh en admin et mot de passe 1234.

Login Odroid C2 avec ARMbian ( debian 9 )
Au premier login , il demande un changement du mot de passe Root

Au premièr démarrage , le système demande de changer le mot de passe , et je  crée mon nouvel utilisateur : jeedom.

Creation utilisateur
Creation nouvel utilisateur

Puis on met a jour le système : ( en mode sudo )

apt-get update
apt-get upgrade

Je configure mes paramètres locale en utilisant la commande : armbian-config plus de détail sur les différents paramètres  : voir doc

armbian-config
armbian-config


Dans le menu « personal » je modifie timezone et locale ( FR-UTF8 ). Puis je redemarre.

Le système est prét à installer Jeedom , Mon Odroid , tourne avec une memoire emmc , je remet mon emmc en place ( en ayant pris soin d’effacer l’ancien systeme ) , puis je démarre mon Odroid.

Afin de copier mon nouveau système sur ma carte emmc , et lui demander de booter sur le disque emmc , il faut taper la commande suivante :

sudo nand-sata-install 

Qui permettra de transférer le système de la carte SD sur le disque emmc.

Transfert du systeme sur disque emmc
Environ 15 minutes pour copier le system sur la memoire emmc.
Arreter l'odroid , enlever le carde SD et laisser seulement la carte Emmc .Puis on redémarre.
L'installation de jeedom peut commencer.
[adsense]

Installation Jeedom

L’installation de jeedom , sa fait en ligne de commande , sous le compte utilisateur précédemment crée. Lancer la commande install en sudo.

wget https://raw.githubusercontent.com/jeedom/core/stable/install/install.sh

chmod +x install.sh

sudo ./install.sh

Une fois le script lancé , prenez votre mal en patience , il faut compter environ 30 minutes.
Il va y avoir 11 étapes , au total plus ou moins longues.

Etape 1 : Mise a jour du systeme si besoin et verification
Etape 2 : Installation des paquets necessaires
Etape 3 : installation de la base de donnée Maria DB 
Etape 4 : installation du serveur Apache
Etape 5 : installation de PHP ( en version 7 )
Etape 6 : Telechargement de jeedom
Etape 7 : Personalisation jeedom
Etape 8 : Configuration jeedom
Etape 9 : Installation de jeedom
Etape 10 : Post jeedom
Etape 11 : Verification de jeedom

==================================================
|    JEEDOM SICK SCRIPT 2018-08-05 08:23:40    |
==================================================
**************************************************
*                 VARIABLES                      *
**************************************************
Dossier d'installation : /var/www/html
User : root
Sudo : OUI
**************************************************
*               DOSSIERS                         *
**************************************************
Charge l'environnement de Jeedom...OK
Vérifie si les log sont en écriture...OK
**************************************************
*              UTILISATEURS                      *
**************************************************
admin =>  Admin
**************************************************
*                 CRON                           *
**************************************************
Vérifie si cron est actif...OK Vérifie si scenario est actif...OK
NAME | STATE | SCHEDULE | DEAMON | ONCE | LAST RUN plugin::cronDaily() | stop | 00 00 * * * * | 0 | 0 |  jeedom::backup() | stop | 19 07 * * * | 0 | 0 |  plugin::cronHourly() | stop | 00 * * * * * | 0 | 0 |  scenario::check() | stop | * * * * * * | 0 | 0 |  scenario::control() | stop | * * * * * * | 0 | 0 |  jeedom::cronDaily() | stop | 00 00 * * * * | 0 | 0 |  jeedom::cronHourly() | stop | 00 * * * * * | 0 | 0 |  jeedom::cron5() | stop | */5 * * * * * | 0 | 0 |  jeedom::cron() | stop | * * * * * * | 0 | 0 |  plugin::cron() | stop | * * * * * * | 0 | 0 |  plugin::cron5() | stop | */5 * * * * * | 0 | 0 |  plugin::cron15() | stop | */15 * * * * * | 0 | 0 |  plugin::cron30() | stop | */30 * * * * * | 0 | 0 |  plugin::checkDeamon() | stop | */5 * * * * * | 0 | 0 |  cache::persist() | stop | */30 * * * * * | 0 | 0 |  history::archive() | stop | 00 5 * * * * | 0 | 0 |  ************************************************** *                 DATE                           * ************************************************** Vérifie si la date de Jeedom est bonne...OK () ************************************************** *                 MESSAGE                        * ************************************************** DATE | PLUGIN | LOGICALID | MESSAGE ************************************************** *                 PLUGIN                         * ************************************************** ID | NAME | STATE ================================================== |         TOUTES LES VERIFICATIONS SONT FAITES    | ================================================== étape 11 vérification de jeedom réussie /!\ IMPORTANT /!\ Le mot de passe root MySQL est e3ab12345678ad Installation finie. Un redémarrage devrait être effectué

A la fin du script , garder une copie des clés de votre installation ( en cas de panne ). Il suffit de redémarrer votre Odroid.

Le serveur jeedom est enfin opérationnel , il suffit de se connecter avec le compte admin par défaut : admin / admin

Restauration de la sauvegarde jeedom

Dans le menu sauvegarde on envoie le fichier de sauvegarde précédemment sauvegardé. On le selectionnne puis on restaure , encore quelques minutes de patience et le serveur jeedom à récupéré l’ancienne configuration.

Il se peut que quelques plugins soit en erreur , il faudra relancer les dépendances.

Conclusions 

La mise à niveau sous débian 9 , est assez facile à faire , si on respecte bien toutes les étapes , compter environ deux bonnes heures , si tout se passe bien. Si vous avez beaucoup de plugin installé , il se peut que la restauration dure plus longtemps , surtout si toutes les dépendances doivent se réinstaller.
On ne gagne pas forcément en vitesse , mais on y gagne en stabilité et cela permettra de supporter les futurs mise à jour.

information jeedom sous debian 9
Information Jeedom debian 9 – Php 7

J’avais prévu , de le faire passer sous PHP 7.2 , mais à ce jour Jeedom , n’est pas compatible avec cette version. Cela fera l’occasion d’un nouvel article , lorsque Jeedom supportera cette version.

Le support de PHP 7.2 , sera prévu avec la version 4 de Jeedom.