Backup restore nicht möglich

Hey zusammen,

ich habe heute mehrmals versucht mein HomeAssistant Backup auf einer neuen NVME wiederherzustellen.

Ausgangssituation: Raspberry Pi5 mit NVME und funktionalem Supervised HomeAssistant. Das ganze läuft mit einer MariaDB Datenbank.

Da diese Version abgekündigt wird, habe ich eine Sicherung erstellt und diese an einem Speicherort hinterlegt.

HassOS auf dem Pi heruntergeladen und das Onboarding gestartet. Der Upload dauert natürlich eine weile, da die Datei 25GB groß ist, aber die Auswahl was wiederhergestellt werden sollte, wird ohne Probleme aufgerufen.

Nun ist es so, wenn ich das Backup wiederherstellen möchte, dann bleibt es beim Wiederherstellungsprozess über 5 Stunden einfach stehen.

Ich habe auch schon versucht, die Sicherung nur mit Homeassistant und der MariaDB wiederherzustellen. Aber auch hier habe ich nach ca 2 Stunden abgebrochen.

Hat jemand eine Idee wie ich das wiederhergestellt bekomme?

Hast Du auch den Versuch gestartet Home Assistant erstmal komplett neu einzurichten.
Also beim Onboarding den Restore zu überspringen. Dann das Backup hochladen und dann ein Restore starten.
Wiederherstelle zuerst nur Home Assistant ohne Addon’s. Nach dem Restore Home Assistant host rebooten und dann nacheinander die Adonis aus dem Backup wiederherstellen.

Gruß
Osorkon

Hi zusammen, leider kam ich nicht eher mich nochmal damit zu beschäftigen.

Aktueller Stand: Ich habe wie oben vorgeschlagen, dass System einmal ohne irgendwas aufgesetzt und die NAS als Backupspeicher eingebunden.

Backup gestartet und gewartet: Nach kurzer Zeit kommt folgende Meldung:

Restore failed: [{‘type’: ‘BackupError’, ‘message’: ‘Restore fc3fd757 error, see supervisor logs’, ‘stage’: ‘await_home_assistant_restart’}]

Wenn ich auf System - Protokolle und Supervisor gehe, dann bleibt es auf “Protokoll wird geladen…” stehen.

Muss ich evtl. noch etwas auf dem alten System vorbereiten? Immerhin war hier ja die Supervised Version installiert und beim neuen eben das HAOS.

Beim alten System sind keine Fehler vorhanden und hier kann ich die Logs usw ohne Probleme aufrufen.

Ob der Wechsel von der Supervised zu der HAOS Version da ggf. irgendeine Rolle spielt kann ich Dir leider auch nicht sagen. Dein Backup ist mit 25GB natürlich auch recht groß und ich weiß nicht ob ein Restore über das NAS da ggf. in ein Timeout läuft, oder ob dem System ggf. irgendwann das RAM ausgeht, oder was auch immer.

Was Du auch noch versuchen könntest ist das Backup nicht von dem NAS aus einspielen zu lassen, sondern es lokal auf die SSD hochladen


und dann versuchen dieses hochgeladene Backup für ein Restore zu nutzen. Dann wäre zumindest das NAS und die Verbindung dazu, als mögliche Fehler-/Problem-Quelle ausgeschlossen.

Ist halt nur so eine eher spontage Idee. :slightly_smiling_face: Falls Du die Variante ohne NAS auch schon probiert haben solltest hat sich die Idee natürlich erledigt.

VG Jim

Anbei konnte ich noch aus dem Log nach einem Neustart ziehen.

> e\[32m2025-10-19 16:20:19.385 INFO (SyncWorker_4) \[supervisor.mounts.mount\] Creating folder for mount: /data/mounts/NAS01e\[0m
> e\[32m2025-10-19 16:20:19.613 INFO (MainThread) \[supervisor.backups.manager\] Found 45 backup filese\[0m
> e\[32m2025-10-19 16:20:39.247 INFO (MainThread) \[supervisor.backups.manager\] Partial-Restore fc3fd757 starte\[0m
> e\[31m2025-10-19 16:24:11.070 ERROR (MainThread) \[supervisor.backups.manager\] Restore fc3fd757 error
> Traceback (most recent call last):
> File “/usr/local/lib/python3.13/tarfile.py”, line 2604, in makefile
> copyfileobj(source, target, tarinfo.size, ReadError, bufsize)
> \~\~\~\~\~\~\~\~\~\~\~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File “/usr/local/lib/python3.13/tarfile.py”, line 252, in copyfileobj
> raise exception(“unexpected end of data”)
> tarfile.ReadError: unexpected end of data
>
> During handling of the above exception, another exception occurred:

> Traceback (most recent call last):
> File “/usr/src/supervisor/supervisor/backups/manager.py”, line 727, in \_do_restore
> async with backup.open(location):
> \~\~\~\~\~\~\~\~\~\~\~^^^^^^^^^^
> File “/usr/local/lib/python3.13/contextlib.py”, line 214, in **aenter**
> return await anext(self.gen)
> ^^^^^^^^^^^^^^^^^^^^^
> File “/usr/src/supervisor/supervisor/backups/backup.py”, line 533, in open
> self.\_tmp = await self.sys_run_in_executor(\_extract_backup)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File “/usr/local/lib/python3.13/concurrent/futures/thread.py”, line 59, in run
> result = self.fn(\*self.args, \*\*self.kwargs)
> File “/usr/src/supervisor/supervisor/backups/backup.py”, line 524, in \_extract_backup
> tar.extractall(
> \~\~\~\~\~\~\~\~\~\~\~\~\~\~^
> path=tmp.name,
> ^^^^^^^^^^^^^^
> members=secure_path(tar),
> ^^^^^^^^^^^^^^^^^^^^^^^^^
> filter=“fully_trusted”,
> ^^^^^^^^^^^^^^^^^^^^^^^
> )
> ^
> File “/usr/local/lib/python3.13/tarfile.py”, line 2355, in extractall
> self.\_extract_one(tarinfo, path, set_attrs=not tarinfo.isdir(),
> \~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> numeric_owner=numeric_owner,
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> filter_function=filter_function)
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File “/usr/local/lib/python3.13/tarfile.py”, line 2464, in \_extract_one
> self.\_handle_fatal_error(e)
> \~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~^^^
> File “/usr/local/lib/python3.13/tarfile.py”, line 2458, in \_extract_one
> self.\_extract_member(tarinfo, os.path.join(path, tarinfo.name),
> \~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~\~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> set_attrs=set_attrs,
> ^^^^^^^^^^^^^^^^^^^^
> numeric_owner=numeric_owner,
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> filter_function=filter_function,
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> extraction_root=path)
> ^^^^^^^^^^^^^^^^^^^^^
> File “/usr/local/lib/python3.13/tarfile.py”, line 2547, in \_extract_member
> self.makefile(tarinfo, targetpath)
> \~\~\~\~\~\~\~\~\~\~\~\~\~^^^^^^^^^^^^^^^^^^^^^
> File “/usr/local/lib/python3.13/tarfile.py”, line 2596, in makefile
> with bltn_open(targetpath, “wb”) as target:
> \~\~\~\~\~\~\~\~\~^^^^^^^^^^^^^^^^^^
> ConnectionAbortedError: \[Errno 103\] Connection abortede\[0m

Für heute habe ich es mal abgebrochen und werde es die Tage nochmal testen.

:crayon:by HarryP: Code-/Logzeilen formatiert (bitte immer in </> einbinden)

s.a.: (Neues Update & Features - Hier in der Community 🫶)

@Der-Eine , hast du mitlerweile eine Lösung für das Problem? Bei mir bleibt der Restore auch hängen ….

Hey, das Zaubermittel war Zeit. Nach guten 13 Stunden war auf einmal alles intakt.

Wieso es so lange dauerte kann ich nicht sagen.

Wie gross ist dein Backup?