Aller au contenu
JelinaJelina DocumentationDocumentation technique
Retour au site officiel

Double système A/B et basculement

Le double système A/B est le mécanisme central de fiabilité de JelinaOS : le noyau et le système possèdent chacun deux copies complètes, l’une active et l’autre destinée aux mises à jour. Cette page décrit les opérations courantes associées.

Terminal window
jelina-info

Consultez la partition active A ou B et l’état du système dans la sortie. L’équipement utilise toujours l’un des systèmes, l’autre servant de secours.

En cours d’exécution System A
│
▼ Écriture de la mise à jour dans System B
▼ Basculement automatique vers B après redémarrage
▼ Vérification du démarrage réussie → Poursuit l’exécution B
│
▼ Échec de vérification → Retour automatique vers A, sans effet sur les applications
  • Le système effectue le basculement automatiquement, sans intervention ;
  • Les contenus des deux systèmes servent de sauvegarde mutuelle et correspondent à l’état d’usine ;
  • Toutes les écritures utilisateur vont dans la partition de données et sont indépendantes du basculement.
  1. Lancez une mise à jour système ;
  2. Elle est écrite sur la partition de secours pendant que l’équipement continue à fonctionner ;
  3. Après redémarrage, le nouveau système est sélectionné et vérifié automatiquement.

Si la nouvelle version pose problème :

  1. Demandez le retour à la version précédente par le mécanisme de mise à jour ;
  2. Le système revient à l’ancienne partition et la vérifie ;
  3. L’équipement reprend son fonctionnement normal.

Le service de retour arrière permet aussi une opération manuelle. Les retours arrière root/kernel prennent effet après redémarrage, celui de l’espace applicatif immédiatement :

Terminal window
systemctl restart jelina-rollback@root # Retour arrière de la partition système, appliqué au redémarrage
systemctl restart jelina-rollback@kernel # Retour arrière de la partition noyau, appliqué au redémarrage
systemctl restart jelina-rollback@app # Retour arrière de la zone d’applications, immédiat
systemctl restart jelina-rollback@adv # Retour arrière de la zone de composants, immédiat

Avant l’opération, le système vérifie que les montages réels correspondent à la configuration afin d’éviter les opérations répétées.

Compteur de démarrage et récupération progressive

Section intitulée « Compteur de démarrage et récupération progressive »

Le compteur de démarrage bootcount suit les tentatives et permet une récupération automatique par étapes :

  • Il augmente à chaque démarrage et revient à zéro après un démarrage réussi ;
  • En cas d’échec, de plantage, de coupure électrique ou de redémarrage par watchdog, il continue d’augmenter ;
  • Après plusieurs échecs consécutifs, le système tente une récupération du démarrage, puis, si nécessaire, un retour arrière de la partition système et de celle du noyau ;
  • Après récupération, le démarrage normal reprend et le compteur est réinitialisé.

Ce mécanisme garantit que l’équipement ne reste pas dans une boucle de redémarrages, après mise à niveau ou défaillance, et retrouve automatiquement un état utilisable.

À chaque démarrage, le système vérifie la partition active :

  • Validation réussie : démarrage normal ;
  • Validation échouée : essai automatique de l’autre système pour retrouver un état utilisable.

Cela permet à l’équipement de fonctionner au démarrage et de récupérer après défaillance, ce qui convient aux sites sans surveillance.

Comment identifier la partition actuellement utilisée ? Exécutez jelina-info et consultez les informations de démarrage.

Le contenu des deux partitions est-il synchronisé ? Non. Chaque système conserve son état d’usine, les données utilisateur sont regroupées dans la partition de données et les relations de versions sont gérées par les mises à jour.

Peut-on choisir manuellement la partition de démarrage ? Ce choix n’est pas nécessaire au quotidien : le système le gère automatiquement. Pour une maintenance particulière, utilisez les fonctions de gestion d’amorçage de la plateforme. Rockchip fournit jelina-rk-bootctl ; consultez son aide pour l’utilisation.