(Migration depuis l’ancien forum, post du 26 janv. 2019.)
Bonjour à tous, c’est akenad ,
Aujourd’hui je vais vous présenter un retour d’expérience sur la restauration d’une Jeedom Smart sur un Odroid-C2 avec une eMMC de 32 Go.
/!\ ATTENTION l’eMMC de la Smart doit être en debian 10, ne fonctionne pas avec une eMMC en debian 11
Cette opération est très particulière, pour utilisateur avancé, à vos risques et périls.
(Voir aussi cette article ) [Présentation] akenad - #26 par akenad
Je vous recommande très vivement de ne le faire que si vous possédez une Smart, et à des fins uniquement de secours temporaire en cas de panne.
J’ai procédé en 3 étapes :
- connecter l’adaptateur USB avec l’eMMC externe sur la Smart
- copier le contenu de la partition boot de la Smart sur l’eMMC externe
- installer l’eMMC dans l’Odroid-C2 et effectuer un recovery mode
1) connecter l’adaptateur USB avec l’eMMC externe sur la Smart
La Smart embarque une eMMC « interne » amovible de 8 Go.
Nous allons utiliser par ailleurs une eMMC « externe » de 32 Go, connectée à un adaptateur USB (USB/eMMC ou USB/miccroSD/eMMC).
Prendre une eMMC 32 Go de chez Hardkernel (C2 Linux, carré rouge) qui sort de la boîte et la connecter à l’adaptateur USB :
(EDIT 04/01/2021 : eMMC 64 Go, Hardkernel, C2 Linux, carré rouge, fonctionne aussi)
2) copier le contenu de la partition boot de la Smart sur l’eMMC externe
Il s’agit de copier la partition boot de la Smart (de l’eMMC interne) sur l’eMMC externe.
Se connecter en SSH sur la smart en tant que root :
Afficher les partitions :
root@jeedom:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 732M 0 732M 0% /dev
tmpfs 172M 22M 150M 13% /run
/dev/mmcblk0p7 6.5G 3.0G 3.3G 48% /
tmpfs 859M 0 859M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 859M 0 859M 0% /sys/fs/cgroup
tmpfs 256M 4.0K 256M 1% /tmp
tmpfs 128M 1.1M 127M 1% /tmp/jeedom
/dev/mmcblk0p1 253M 101M 152M 40% /media/boot
root@jeedom:~# fdisk -l
Disk /dev/mmcblk0: 7.3 GiB, 7818182656 bytes, 15269888 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x34100000
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 65536 589823 524288 256M c W95 FAT32 (LBA)
/dev/mmcblk0p2 589824 606207 16384 8M 83 Linux
/dev/mmcblk0p3 606208 622591 16384 8M 83 Linux
/dev/mmcblk0p4 622592 15269887 14647296 7G 5 Extended
/dev/mmcblk0p5 624640 641023 16384 8M 83 Linux
/dev/mmcblk0p6 643072 1167359 524288 256M 83 Linux
/dev/mmcblk0p7 1169408 15210495 14041088 6.7G 83 Linux
Disk /dev/sda: 29.1 GiB, 31268536320 bytes, 61071360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xd3630000
Device Boot Start End Sectors Size Id Type
/dev/sda1 2048 264191 262144 128M c W95 FAT (LBA)
/dev/sda2 264192 11438079 11173888 5.3G 83 Linux
En principe la partition FAT de l’eMMC interne est montée sur /media/boot et la partition FAT de l’eMMC externe apparaît sur /dev/sda1
Monter la partition FAT de l’eMMC externe :
root@jeedom:~# mount /dev/sda1 /mnt
Effacer le contenu de la partition FAT de l’eMMC externe :
root@jeedom:~# rm -rf /mnt
rm: cannot remove ‹ /mnt ›: Device or resource busy
Copier le contenu de la partition boot de la Smart (eMMC interne) sur l’eMMC externe :
(Le premier cp dure environ 3 minutes au grand maximum, environ 60 à 100 Mo à copier.)
(EDIT 04/01/2021 : fonctionne aussi si la Smart a été migrée en buster. Dans ce cas, si le dossier multiboot/mb_kernel est vide, la copie est très rapide)
root@jeedom:~# cp -r /media/boot/multiboot /mnt
root@jeedom:~# cp /media/boot/boot.ini /mnt
root@jeedom:~# cp /media/boot/THIS_IS_EMMC /mnt
Démonter la partition FAT de l’eMMC externe :
root@jeedom:~# umount /mnt
Débrancher l’adaptateur USB de la Smart.
(L’adapteur USB/eMMC peut être connecté à un PC pour voir les fichiers qui viennent d’être copiés dessus et pour réaliser une copie de sauvegarde, ceci pour éviter d’avoir à renouveler l’opération d’extraction de la partition boot de la Smart en cas d’un nouveau besoin.)
3) installer l’eMMC dans l’Odroid-C2 et effectuer un recovery mode
Voir la documentation officielle Jeedom SAS pour le recovery mode : https://doc.jeedom.com/fr_FR/installation/smart
Pour voir ce qui se passe, il est fortement conseillé de brancher un écran sur le port HDMI et un clavier USB.
(les images des écrans sont ici : [RTEX] Jeedom Smart Recovery mode - passage en Buster Jeedom V4)
Une fois le recovery mode terminé, et éventuellement avant la phase de restauration d’une sauvegarde de Jeedom proprement dite, il est possible de consulter les partitions :
Se connecter en SSH sur l’Odroid-C2 en tant que root.
Afficher les partitions :
root@jeedom:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 732M 0 732M 0% /dev
tmpfs 172M 8.9M 163M 6% /run
/dev/mmcblk0p7 28G 2.8G 24G 11% /
tmpfs 859M 0 859M 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 859M 0 859M 0% /sys/fs/cgroup
tmpfs 256M 0 256M 0% /tmp
tmpfs 128M 80K 128M 1% /tmp/jeedom
/dev/mmcblk0p1 253M 101M 152M 40% /media/boot
root@jeedom:~# fdisk -l
Disk /dev/mmcblk0: 29.1 GiB, 31268536320 bytes, 61071360 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xeba60000
Device Boot Start End Sectors Size Id Type
/dev/mmcblk0p1 65536 589823 524288 256M c W95 FAT32 (LBA)
/dev/mmcblk0p2 589824 606207 16384 8M 83 Linux
/dev/mmcblk0p3 606208 622591 16384 8M 83 Linux
/dev/mmcblk0p4 622592 61071359 60448768 28.8G 5 Extended
/dev/mmcblk0p5 624640 641023 16384 8M 83 Linux
/dev/mmcblk0p6 643072 1167359 524288 256M 83 Linux
/dev/mmcblk0p7 1169408 61011967 59842560 28.5G 83 Linux
On peut constater en passant que la partition Linux qui héberge Jeedom, /dev/mmcblk0p7, est passée de
6.7 à 28.5 Go automatiquement avec l’opération de recovery mode.
Voila j’espère que ce retour d’expérience sera utile aux membres Jeedom.
akenad