Der Backupmechanismus von Home Assistant

Home Assistant bietet seit Anfang des Jahres einen internen Mechanismus, alle Daten des Systems zu sichern und im Ernstfall wieder her zu stellen. Diesen möchte ich natürlich nutzen.

Backup

In der Version 2025 von Home Assistant wurde der aktuelle Backupmechanismus implementiert. Um ihn einzurichten, klicke ich auf Einstellungen/System/Backups.

Der Backups Button unter Einstellungen/System
Der Backups Button unter Einstellungen/System

Dann befinde ich mich direkt im Hauptdialog zur Konfiguration der Backups.

Der Backup Hauptdialog
Der Backup Hauptdialog

Ad-Hoc Backup

Unter diesem Dialog befindet sich der Button Backup jetzt erstellen.

Button "Backup jetzt erstellen"
Button „Backup jetzt erstellen“

Damit kann ich ein Backup sofort erstellen. Was ich gerne vor umfangreicheren Arbeiten am System mache.

Im Dialog zum Erstellen des Backups kann ich wählen zwischen Automatisches und Manuelles Backup. Es klingt zunächst etwas widersinnig, bei einem manuell angestoßenen Backup von „Automatisch“ zu reden. Gemeint ist hier aber die Konfiguration der Backupdaten. Diese kann ich entweder jedes mal manuell konfigurieren oder aus der Konfiguration für die automatischen Backups übernehmen (dazu mehr im nächsten Abschnitt).

Konfiguration des manuellen Backup
Konfiguration des manuellen Backup

Die Einstellungen von Home Assistant sind so wichtig, dass sie immer im Backup landen und nicht ausgeschaltet werden können. Ich entscheide mich dazu, auch die Verlaufsdaten zu sichern. Dadurch dauert der Backup Prozess zwar länger und das Archiv wird größer. Mit Weiter lande ich dann im Synchronisationsdialog. Hier vergebe ich einen Namen für das Backuparchiv und kann den Speicherort auswählen. Letzteren lasse ich auf „Alle“ stehen. Als Namen vergebe ich „testbackup-27-07-25“. Wenn ich den Namen leer lasse, vergibt Home Assistant selbstständig einen eindeutigen Namen.

Der Dialog zur Synchronisierung
Der Dialog zur Synchronisierung

Mit Klick auf Backup erstellen starte ich nun den Sicherungsvorgang. Home Assistant zeigt den laufenden Prozess oben in der Webseite an.

Das Backup läuft.
Das Backup läuft.

Nach ein paar Minuten ist der Vorgang erfolgreich abgeschlossen.

Das Backup wurde erfolgreich durchgeführt.
Das Backup wurde erfolgreich durchgeführt.

Jetzt möchte ich natürlich wissen, wo das Backup gespeichert wurde und finde es unter /opt/homeassistant/backups in meinem Dockervolume wieder.

Das testbackup-27-07-25_2025-07-27_11.51_10038481.tar Archiv im backups Verzeichnis.

Damit kann ich manuell jederzeit ein Backup von Home Assistant erstellen. Aber besser ist, dieses zu automatisieren.

Backups konfigurieren

Auch bei den manuellen Backups möchte ich nicht jedes mal die Konfiguration aufs Neue durchführen. konfiguriere ich den Ort, an dem meine Backups gespeichert werden sollen und klicke im Backup Hauptdialog auf Speicherorte für Backups.

Der nachfolgende Dialog ist in mehrere Bereiche aufgeteilt, auf die ich detailliert eingehen möchte.

Zeitplan

Zunächst konfiguriere ich, an welchen Tagen und zu welcher Uhrzeit das Backup laufen soll. Ich wähle als Backuptage alle Wochentage bis auf Dienstag und Mittwoch. Die Uhrzeit setze ich auf 05:00 Uhr morgens, dann ist Home Assistant mit der Bereinigung der Datenbank fertig. Dazu wähle ich aus, dass immer drei Backups aufbewahrt werden sollen.

Einstellungen zum Zeitplan für automatische Backups.
Einstellungen zum Zeitplan für automatische Backups.

zu sichernde Daten

Hier treffe ich auf die gleichen Einstellungen wie beim manuellen Backup und aktiviere auch die Verlaufsdaten.

Speicherorte

Hier lasse ich die Vorgabe zum Speichern ins backups Verzeichnis bestehen. Die Cloud von Home Assistant interessiert mich nicht.

Verschlüsselungscode

Um das Backuparchiv zu verschlüsseln erzeugt Home Assistant automatisch einen Code, ohne den ich das Backup nicht wieder einspielen kann. Daher speichere ich das Notfallset an einem sicheren Ort außerhalb des Homeassistant Raspberry

Bereich Verschlüsselungscode
Bereich Verschlüsselungscode

Den aktuellen Code kann ich mir anzeigen lassen

Verschlüsselungscode (unkenntlich gemacht😀
Verschlüsselungscode (unkenntlich gemacht😀

Ich kann den Code nachträglich auch ändern doch der neue Code gilt dann nur für neu angelegte Backups, für die bestehenden benötige ich immer noch den aktuellen Code, um sie benutzen zu können.

Backups spiegeln

Das Backup ist jetzt fertig eingerichtet, leidet aber noch an einem Problem. Alle Backups liegen auf dem Datenträger der Homeassistant Installation. Sollte dieser versagen, habe ich u.U. keinen Zugriff darauf.

Daher schreibe ich mir ein kleines Script, um den Inhalt von /opt/homeassistant/backups nach /tank/ha-backup auf meinem NAS mit rsync zu spiegeln.

#!/bin/bash
/usr/bin/rsync -a --delete /opt/homeassistant/backups/ /tank/ha-backup/

Das Script liegt unter ~/bin/ha-backup.

Ich richte einen Cronjob ein, um es regelmäßig aufzurufen.

crontab -e

Das Script wird jeden Tag um 0545 Uhr aufgerufen.

# m h  dom mon dow   command
42 5 * * * /home/pi/bin/ha-backup

Bis hier hin bin ich am Sonntag, den 27.07.25 gekommen. Ich warte jetzt bis zum nächsten Morgen, um zu sehen, ob alles funktioniert.

Backup testen

Am Montag morgen erwarte ich, dass ein Backuparchiv erstellt wurde und auf das NAS gespiegelt wurde.

Eine Auflistung der beiden Verzeichnisse zeigt, dass um 0500 Uhr am 28.07.25 ein neues automatisches Backup erstellt wurde und in beiden Verzeichnissen liegt.

Das Backup vom 28.07. 0500 Uhr liegt in beiden Verzeichnissen.
Das Backup vom 28.07. 0500 Uhr liegt in beiden Verzeichnissen.

Backup einspielen

Um das Recovery zu testen, schreibe ein frisches Raspberry Pi OS auf eine separate MicroSD Karte und erzeuge alle Container.

Danach rufe ich das Home Assistant Web-Interface auf dort wird mir im Willkommensbildschirm die Option Backup hochladen angeboten.

illkommensdialog mit der Option "Backup hochladen"
Willkommensdialog mit der Option „Backup hochladen“

Nach Auswahl dieser Option kann ich das Backuparchiv hochladen.

Dialog zum Hochladen des Backups
Dialog zum Hochladen des Backups

Jetzt kommt der Encryption Key von oben ins Spiel. Ohne diesen kann das verschlüsselte Archiv nicht entschlüsselt werden. Wenn dieser korrekt eingeben ist, wird meine Home Assistant Konfiguration wieder hergestellt.

Dialog "Wiederherstellung im Gange". Der Vorgang dauert nur einige Minuten.
Dialog „Wiederherstellung im Gange“. Der Vorgang dauert nur einige Minuten.

Wichtig ist jetzt zu wissen, dass nach dem Recover ein neuer Encryption Key erzeugt wird, mit dem alle zukünftigen Backups verschlüsselt werden! Daher speichere ich mir das neue Notfallset zusätzlich zum alten!

Die Konfiguration des Backupsystems ist auch wiederhergestellt worden. Da die CronTab nicht von Home Assistant verwaltet wird, muss diese manuell neu erzeugen.

Das Backup beinhaltet nur die Konfiguration von Home Assistant selber. Bei allen anderen Containern muss ich die Konfiguration aus deren Backups wieder herstellen oder von Hand nachziehen.

Fazit

Der Backup Mechanismus von Home Assistant ist inzwischen einfach und komfortabel einzurichten und schützt ausreichend vor einem Datenverlust.

Schreibe einen Kommentar

Insert math as
Block
Inline
Additional settings
Formula color
Text color
#333333
Type math using LaTeX
Preview
\({}\)
Nothing to preview
Insert
Creative Commons License
Except where otherwise noted, the content on this site is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
raspithek.de - Olli Graf
WordPress Cookie Hinweis von Real Cookie Banner