Warum verursacht Home Assistant über Nacht wiederholte Festplattenaktivität?

Eva Wong ist die Technische Redakteurin und und leidenschaftliche Tüftlerin bei ZimaSpace. Eine lebenslange Geek mit einer Leidenschaft für Homelabs und Open-Source-Software, sie spezialisiert sich darauf, komplexe technische Konzepte in zugängliche, praktische Anleitungenzu übersetzen. Eva ist der Meinung, dass Self-Hosting Spaß machen und nicht einschüchternd sein sollte. Durch ihre Tutorials befähigt sie die Community, Hardware-Setups zu entmystifizieren, vom Bau ihres ersten NAS bis hin zur Beherrschung von Docker-Containern.

Wiederkehrende Festplattenaktivität von Home Assistant über Nacht ist in der Regel auf geplante Aufgaben zurückzuführen und kein Beweis dafür, dass das Speichergerät oder der Recorder fehlerhaft ist.

Am schnellsten lässt sich die Ursache diagnostizieren, indem du den Zeitraum mit hoher Aktivität zunächst den Zeitstempeln von Home Assistant, Add-ons, Datenbank und Host zuordnest, bevor du die Aufbewahrungsdauer änderst oder die Datenbank verschiebst. Recorder-Wartung, automatische Backups, Logrotation, Schreibvorgänge von Kameras oder Add-ons sowie Backup-Jobs auf Host-Ebene können ähnliche Aktivitätsspitzen verursachen. Betrachte das Ereignis zunächst als Zeitplanproblem: Ermittle, welcher Prozess schreibt, wie lange die Aktivität dauert und ob dieselbe Arbeitslast jede Nacht erfolgreich abgeschlossen wird.

Ordne die Festplattenaktivität zuerst einem geplanten Job zu, bevor du Einstellungen änderst

Beginne mit einem einstündigen Zeitfenster rund um die wiederkehrende Aktivität und erfasse Festplattenlatenz, Schreibrate, I/O der Prozesse oder Container sowie die genauen Start- und Endzeiten. Ein Muster, das fast jede Nacht zur gleichen Minute beginnt, deutet stark auf geplante Wartung hin; ein Muster, das sich mit der Aktivität im Haushalt verschiebt, ist eher auf eine Integration, Kamera oder Gerätearbeitslast zurückzuführen.

Der Home-Assistant-Recorder führt regelmäßig Aufbewahrungsarbeiten durch. Beobachtungen aus der Community zeigen, dass die Datenbankbereinigung in den frühen Morgenstunden läuft, während Langzeitstatistiken nach ihrem eigenen Zeitplan fortgesetzt werden. Daher ist der Zeitplan der Recorder-Bereinigung ein sinnvoller erster Vergleich, wenn die Festplatte zu einer regelmäßig wiederkehrenden nächtlichen Uhrzeit aktiv wird.

Verringere die Aufbewahrungsdauer nicht, deaktiviere den Verlauf nicht und verschiebe die Datenbank nicht einfach, weil das Laufwerk aktiv ist. Beweise zuerst, dass der Recorder der Schreibprozess ist. Beginnt die Aktivität vor oder nach der Datenbankaufgabe, vergleiche die Zeitpläne von Backups, Docker- oder Add-on-Protokolle, Dateisystem-Snapshots, NAS-Replikation, Virenscans sowie alle Medien- oder Kameradienste, die dasselbe Laufwerk verwenden.

Die vier häufigsten Ursachen haben unterschiedliche I/O-Muster

Die wichtigsten möglichen Ursachen sind Recorder-Wartung, automatische Backups, sehr aktive Integrationen oder Add-ons sowie Speicheraufgaben auf Host-Ebene. Sie können sich überschneiden. Aussagekräftig ist daher nicht nur, dass die Festplatte ausgelastet ist, sondern ob die Datenbankdatei, das Backup-Ziel, der Protokollpfad oder ein anderer Container während desselben Zeitraums für die Schreibvorgänge verantwortlich ist.

Das automatisierte Backup-System von Home Assistant verwendete ursprünglich einen Zeitplan am frühen Morgen und erhielt später konfigurierbare Zeitpunkte. Dadurch kann die Backup-Aktivität zeitlich ganz natürlich mit der Datenbankwartung zusammenfallen. Die Versionshistorie rund um den Zeitplan automatischer Backups erinnert daran, das konfigurierte Backup-Zeitfenster zu prüfen, statt anzunehmen, dass sämtliche nächtliche I/O-Aktivität vom Recorder stammt.

Verwende die folgenden Muster als Hypothesen und ändere jeweils nur einen Zeitplan. Eine Ursache ist bestätigt, wenn das Verschieben oder Deaktivieren dieser einzelnen Aufgabe die Festplattenaktivität zeitlich mitverschiebt, während die übrige Home-Assistant-Arbeitslast unverändert bleibt.

Ursache 1: Recorder-Bereinigung oder Neuorganisation

  • Muster: datenbanklastige Schreibvorgänge zu einer vorhersehbaren Zeit am frühen Morgen.
  • Prüfen: Vergleiche Recorder-Protokolle, Datenbankgröße und Speicherlatenz während dieses Zeitraums.
  • WENN–DANN: Wenn die Aktivität dem Zeitplan der Bereinigung oder Neuorganisation folgt und sauber endet, handelt es sich um geplante Wartung und nicht um eine unerklärliche Endlosschleife.

Ursache 2: Automatische Backups oder Add-on-Backups

  • Muster: Lesevorgänge aus App-Daten sowie große sequenzielle Schreibvorgänge auf lokalen, USB- oder Netzwerk-Backupspeicher.
  • Prüfen: Vergleiche die Startzeit des Backup-Jobs und den Durchsatz am Ziel.
  • WENN–DANN: Wenn eine Verschiebung des Backup-Zeitplans die Festplattenaktivität ebenfalls verschiebt, behalte das Backup bei und verlege lediglich sein Zeitfenster, statt Datenbankschreibvorgänge zu unterdrücken.

Ursache 3: Protokollierung, Kameras oder sehr aktive Integrationen

  • Muster: Kontinuierliche oder wiederholte kleine Schreibvorgänge, die eher Ereignissen von Entitäten als einem einzelnen Wartungszeitfenster folgen.
  • Prüfen: Ermittle sich schnell ändernde Entitäten, Debug-Protokollierung, Kameraaufnahmen und Add-on-Datenbanken.
  • WENN–DANN: Wenn die Schreibvorgänge auch außerhalb geplanter Aufgaben fortgesetzt werden, reduziere den spezifischen Verursacher statt die Recorder-Funktionalität insgesamt einzuschränken.

Ursache 4: Eine andere Host-Aufgabe verwendet dasselbe Laufwerk

  • Muster: Die Latenz von Home Assistant steigt, während ein anderer Container, Snapshot-, Scrub- oder Replikationsprozess die I/O-Ressourcen beansprucht.
  • Prüfen: Untersuche die I/O-Zuordnung auf Host-Ebene und nicht nur die Home-Assistant-Protokolle.
  • WENN–DANN: Wenn das Verschieben der benachbarten Aufgabe die nächtliche Konkurrenz um Speicherressourcen beseitigt, war Home Assistant das Opfer und nicht die Ursache.

Gesunde Wartung von ungewöhnlich hoher Schreiblast unterscheiden

Eine gesunde geplante Aktivitätsspitze beginnt, erledigt eine begrenzte Aufgabe und kehrt anschließend ohne Datenbankfehler oder danach steigende hohe Latenz zum normalen Ausgangsniveau zurück. Warnzeichen sind ein Zeitfenster, das von Nacht zu Nacht länger wird, wiederholte Datenbankkorruption oder Sperrfehler, ein volles Dateisystem oder ein Job, der nie einen stabilen Abschluss erreicht.

Ein Beispiel zur Optimierung des Recorders zeigt, wie die Reduzierung unnötig aufgezeichneter Zustände das Datenbankwachstum und damit den künftigen Wartungs- und Backup-Aufwand verringern kann. Nutze eine solche Reduzierung des Aufzeichnungsvolumens jedoch erst, wenn die Daten belegen, dass das Recorder-Volumen tatsächlich das Problem ist – nicht reflexartig bei jeder Aktivität der Festplattenanzeige.

Die kritische Grenze ist eine für den Benutzer spürbare Beeinträchtigung oder ein fehlender Zeitpuffer für den Abschluss. Wenn der nächtliche Job vor der aktiven Phase des Haushalts fertig wird und die Speicherlatenz unauffällig bleibt, ist die Aktivität allein kein Fehler. Wenn sich die Wartung mit morgendlichen Automationen überschneidet, Backups wiederholt fehlschlagen oder die Datenbank an die Grenze des freien Speicherplatzes kommt, sollten Aufbewahrungsdauer, Zeitplan, Speicher oder die Trennung der Arbeitslast angepasst werden.

Führe einen Isolationstest über eine Nacht durch und überprüfe das ursprüngliche Zeitfenster

Behalte die normale Home-Assistant-Konfiguration bei und verschiebe nur eine verdächtige Aufgabe auf eine andere Uhrzeit. Erfasse in beiden Nächten Schreibrate, I/O-Wartezeit, Datenbankaktivität und die schreibenden Prozesse auf Containerebene. Deaktiviere nicht gleichzeitig mehrere Integrationen und Backups, da ein besseres Ergebnis sonst nicht erkennen ließe, welche Änderung ausschlaggebend war.

Die zugehörige ZimaSpace-Analyse zu Hintergrundaktivität von Home Assistant verwendet dieselbe Zuordnungsregel: Ermittle den Verantwortlichen für die eingereihten oder geplanten Aufgaben, bevor du eine Ressourcenspitze als Kapazitätsproblem der Hardware behandelst.

Der Test gilt als bestanden, wenn der nächtliche Schreibprozess identifiziert ist, seine Aktivität begrenzt bleibt, Datenbank und Backups erfolgreich abgeschlossen werden, ausreichend freier Speicherplatz vorhanden ist und die normale lokale Steuerung während des ursprünglichen Zeitfensters nicht beeinträchtigt wird. Untersuche den Speicherzustand oder eine Datenbankwiederherstellung erst dann, wenn derselbe kontrollierte Test anhaltende Fehler, eine unbegrenzte Dauer oder eine I/O-Latenz zeigt, die keinem legitimen geplanten Job folgt.

Support & Tipps

Mehr zum Lesen

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.