HA Supervised crashé suite à échec d'update

Mon problème

Bonjour.

Mon appli Android ne parvenait plus à se connecter à mon HA en indiquant que le certificat était périmé. Je me suis connecté au Dashboard, j’ai vu que Nginx SSL Proxy ne tournait pas et que que j’avais une MAJ en attente pour HA Core.
J’ai d’abord tenté de relancer l’addon Nginx SSL Proxy, sans succès.
Avant de chercher plus loin j’ai lancé la MAJ du core. Et là ça n’a jamais abouti.
En regardant les logs ça m’indiquait l’update avait échoué.

Là panique, je regarde si je peux restaurer la version précédente avec les backups.
Je trouve le backup qui m’intéresse avec ha backups list, note le slug, puis tente un ha backups restore 5e2a50bc et là ça ne fonctionne pas car le backup n’est qu’un partial et pas un full. Le problème est que dans ma liste de backups, il n’y a que des partials.

En lisant la doc, je trouve le moyen de forcer la restauration d’un backup partial en faisant ha backups restore 5e2a50bc --homeassistant.

Mais apparemment la restauration n’a pas fonctionné, voici le dernier log :

23-01-28 16:08:20 INFO (MainThread) [supervisor.backups.manager] Partial-Restore 5e2a50bc start
23-01-28 16:08:20 INFO (MainThread) [supervisor.backups.manager] Restoring 5e2a50bc Docker config
23-01-28 16:08:20 INFO (MainThread) [supervisor.backups.manager] Restoring 5e2a50bc Home Assistant Core
23-01-28 16:08:21 INFO (MainThread) [supervisor.homeassistant.module] Restore Home Assistant Core config folder
23-01-28 16:08:22 INFO (MainThread) [supervisor.homeassistant.module] Restore Home Assistant Core config folder done
23-01-28 16:08:22 INFO (MainThread) [supervisor.homeassistant.module] Restore Home Assistant Core metadata
23-01-28 16:08:23 INFO (MainThread) [supervisor.backups.manager] Restore 5e2a50bc wait for Home-Assistant
23-01-28 16:08:23 INFO (MainThread) [supervisor.homeassistant.core] Updating Home Assistant to version 2022.8.7
23-01-28 16:08:23 INFO (SyncWorker_1) [supervisor.docker.interface] Updating image ghcr.io/home-assistant/raspberrypi4-64-homeassistant:2022.11.4 to ghcr.io/home-assistant/raspberrypi4-64-homeassistant:2022.8.7
23-01-28 16:08:23 INFO (SyncWorker_1) [supervisor.docker.interface] Downloading docker image ghcr.io/home-assistant/raspberrypi4-64-homeassistant with tag 2022.8.7.
23-01-28 16:11:26 INFO (SyncWorker_1) [supervisor.docker.interface] Cleaning homeassistant application
23-01-28 16:11:26 INFO (MainThread) [supervisor.homeassistant.core] Successfully started Home Assistant 2022.8.7
23-01-28 16:11:28 INFO (SyncWorker_2) [supervisor.docker.interface] Cleanup images: ['ghcr.io/home-assistant/raspberrypi4-64-homeassistant:latest']
23-01-28 16:12:00 INFO (SyncWorker_2) [supervisor.docker.interface] Cleanup images: ['ghcr.io/home-assistant/raspberrypi4-64-homeassistant:2023.1.7']
23-01-28 16:12:22 INFO (SyncWorker_2) [supervisor.docker.interface] Cleanup images: ['ghcr.io/home-assistant/raspberrypi4-64-homeassistant:2022.11.4']
23-01-28 16:12:50 INFO (MainThread) [supervisor.resolution.module] Create new issue IssueType.UPDATE_FAILED - ContextType.CORE / None
23-01-28 16:12:50 ERROR (MainThread) [supervisor.backups.manager] Restore 5e2a50bc error
Traceback (most recent call last):
  File "/usr/src/supervisor/supervisor/backups/manager.py", line 296, in _do_restore
    await task_hass
  File "/usr/src/supervisor/supervisor/backups/backup.py", line 517, in _core_update
    await self.sys_homeassistant.core.update(self.homeassistant_version)
  File "/usr/src/supervisor/supervisor/utils/__init__.py", line 33, in wrap_api
    return await method(api, *args, **kwargs)
  File "/usr/src/supervisor/supervisor/jobs/decorator.py", line 156, in wrapper
    raise err
  File "/usr/src/supervisor/supervisor/jobs/decorator.py", line 154, in wrapper
    return await self._method(*args, **kwargs)
  File "/usr/src/supervisor/supervisor/homeassistant/core.py", line 282, in update
    raise HomeAssistantUpdateError()
supervisor.exceptions.HomeAssistantUpdateError
23-01-28 16:12:50 INFO (MainThread) [supervisor.homeassistant.module] Update pulse/client.config: /data/tmp/homeassistant_pulse
23-01-28 16:12:52 INFO (SyncWorker_7) [supervisor.docker.homeassistant] Starting Home Assistant ghcr.io/home-assistant/raspberrypi4-64-homeassistant with version 2022.8.7
23-01-28 16:12:52 INFO (MainThread) [supervisor.homeassistant.core] Wait until Home Assistant is ready
23-01-28 16:12:57 ERROR (MainThread) [supervisor.homeassistant.core] Home Assistant has crashed!

Voilà où j’en suis, je ne sais pas trop quoi faire à ce stade.
J’ai accès à la CLI de home assistant, mais les commandes ha core * plantent systématiquement car le core ne tourne pas.

Une idée ?

Ma configuration


J’ai HA en mode supervised sur un Raspberry PI 4 sous Raspbian

Distributor ID: Raspbian
Description: Raspbian GNU/Linux 10 (buster)
Release: 10
Codename: buster

Salut
Étonnant car à voir les versions qui s’affiche tu as plusieurs mois de retard sur les mises à jour.
Donc puisque tu as accès à la machine :

  • Profite de copier les fichiers actuels dans un coin.
  • Réinstalle HA via le fichier d’installation .dpkg ou . deb par dessus sans rien toucher (le superviseur devrait faire son boulot de correction/mise à jour)
  • Regarde bien les logs pour trouver tous les breacking changes depuis la version que tu avais jusqu’à celle de fin janvier qui sera celle installée

Reste à espérer que ça soit suffisant.

Merci @Pulpy-Luke pour ta réponse.

  • Profite de copier les fichiers actuels dans un coin.

Je viens de copier le dossier /usr/share/hassio sur mon portable.

Du coup je relance homeassistant-supervised.deb ? Je relance celui avec lequel j’avais fait l’installation à la base ? Ou il vaut mieux que je récupère le dernier ?

A la base je partirai avac la version à jour. Le souci c’est que tu as l’air d’avoir des versions tellement vieilles que tu risques d’avoir une configuration avec des erreurs.

Bon, j’ai tenté de relancer le .deb, j’ai eu des petites erreurs mais c’est allé jusqu’au bout.
J’ai bien un retour lorsque j’utilise la CLI ha core *.
Par ex ha core info

arch: aarch64
audio_input: None
audio_output: None
boot: true
image: ghcr.io/home-assistant/raspberrypi4-64-homeassistant
ip_address: 172.30.32.1
machine: raspberrypi4-64
port: 8123
ssl: true
update_available: false
version: 2023.1.7
version_latest: 2023.1.7
watchdog: true

Mais lovelace n’est toujours pas accessible.
En vérifiant avec docker ps, il semble que le container principal de homeassistant ne soit pas lancé. Je tente de forcer avec ha core start, ça plante et m’invite à voir avec le supervisor.
Un ha core logs me sort exec /init: exec format error ce qui d’après mes recherches indique un souci avec la conf docker.

Bref, j’arrête là, tu as raison, avec mon raspbian 10 je ne colle plus avec les prérequis de HA Supervised (je n’y ai jamais collé d’ailleurs). Ce n’est pas faute d’avoir lu les X warnings des devs de HA, qui précisent bien que Supervised n’est censé bien tourner que sur la dernière version de Debian.

Donc je fais un backup de tout ce que je peux, et ensuite je refais toute l’install, soit en Supervised en partant sur une Debian 11, mais je crois que je vais encore moins m’embêter et partir sur HA OS.

A la base j’avais mis une Supervised pour pouvoir gérer sur la même machine un service python qui se lance au démarrage, pour communiquer avec mon volet roulant Somfy via un petit emetteur 433Mhz branché sur les GPIO (Pi Somfy)

J’ai vu que depuis, quelqu’un a tenté d’intégrer ça via un addon HA, donc je vais tester ça sur HA OS.

Et si l’addon ne fonctionne pas, je pourrai toujours essayer de déporter l’émetteur sur un ESP32 et le connecter à HA OS via Esphome, même si ça m’a l’air un peu plus compliqué.

Encore merci.

Hello

Pas de chance. Le message d’erreur me fait penser à des données corrompues mais bon si c’est les seules info dans le fichier homeassistant.log, c’est court.
C’est effectivement plus simple de repartir de 0.