Update Strategien für IoT-Devices im Vergleich

30. Oktober 2025

Das Aktualisieren von IoT- oder Embedded-Geräten ist ein unverzichtbarer Bestandteil des Produktlebenszyklus. Im Laufe der technischen Entwicklung haben sich verschiedene Update-Strategien etabliert. Dieser Artikel beschreibt einige davon und soll bei der Auswahl der passenden Methode unterstützen.

A/B Update Schema

Image-basierte Updates

Eine der ältesten und einfachsten Update-Strategien ist das image-basierte Update. Dabei wird beim Release ein vollständiges, lauffähiges Abbild des Speichermediums inklusive Partitionslayout erzeugt und auf dem Gerät installiert.

Alternativ kann auch nur ein komprimiertes Archiv (z. B. ein .tar-Archiv des Dateisystems) erzeugt und installiert werden.

Es gibt zwei grundlegende Installationsmethoden:

Direktes Überschreiben (In‑place)

Das Update wird über den Bootloader installiert und überschreibt die bestehende Systemversion. Diese Methode wird häufig bei älteren Geräten verwendet, da sie keinen zusätzlichen Speicherplatz benötigt.

Vorteile:

  • Spart Hardwarekosten durch geringeren Speicherbedarf

Nachteile:

  • Kein Rollback möglich bei fehlgeschlagenem Update
  • Geringe Flexibilität

A/B-Partitionsschema

Das Update wird aus dem laufenden System (oder ebenfalls über den Bootloader) auf eine zweite, inaktive Partition installiert. Nach einem erfolgreichen Update wird beim nächsten Boot auf die neue Partition umgeschaltet.

Vorteile:

  • Höhere Ausfallsicherheit
  • Einfacher Rollback möglich

Nachteile:

  • Doppelt so viel Speicherbedarf für das Systemabbild

Ein prominentes Beispiel für das A/B-Schema sind moderne Android-Smartphones, die meist über 128 GB Speicher verfügen. Sie nutzen beispielsweise 5 GB für System A und 5 GB für System B – also weniger als 10 % des Speichers.

Zusammenfassung
Der größte Vorteil dieser Strategie ist die Konsistenz des Systems. Der größte Nachteil ist jedoch die Größe der Updates. Solche System-Updates enthalten in der Regel alle Daten und können ein Sicherheitsupdate auf mehrere GB „aufblähen“. Die meisten Benutzer bevorzugen schnelle Updates ohne lange Downloadzeiten. Daher ist diese Option nur für Geräte geeignet, die unregelmäßig Updates erhalten, und wird aufgrund moderner Cybersicherheitsanforderungen zunehmend ausgemustert.


Paketbasierte Updates

Bei paketbasierten Updates werden nur einzelne Systemkomponenten aktualisiert. Ein Paketmanager übernimmt Download, Verifikation und Installation.

Mögliche Vorgehensweisen:

  1. Direktinstallation mit Live‑Neustart einzelner Dienste (geringe Downtime, mögliches Risiko während des Updates).
  2. Direktinstallation, Aktivierung beim nächsten Systemneustart (sauberer Startpunkt, planbare Unterbrechung).
  3. Installation beim Boot (Updates werden vor dem Hochfahren eingespielt; Laufzeitunterbrechungen entfallen, Start dauert ggf. länger).
  4. Installation in separate Partition (Hybrid mit Image‑Ansatz; kombiniert Paket‑Flexibilität mit atomarer Aktivierung).
  5. Installation mit Copy‑on‑Write‑Snapshots (z. B. Btrfs): Vor dem Update Snapshot erstellen, bei Problemen per Rollback zurückkehren.

Vorteile:

  • Effiziente Verteilung: Viele Updates sind nur wenige KB/MB groß → schnelle Downloads, häufige Releases möglich (mehrfach täglich).
  • Feingranular: Einzelne Komponenten lassen sich unabhängig aktualisieren.

Nachteile:

  • Höhere Komplexität im Updatepfad (Abhängigkeiten, Kompatibilitäten, Orchestrierung).
  • Konsistenzrisiken bei Teilupdates ohne sauberen Aktivierungspunkt (mit Snapshots/Boot‑Aktivierung jedoch gut beherrschbar).

Zusammenfassung

Der größte Vorteil dieser Strategie ist die geringe Updategröße und die schnelle Installation, der größte Nachteil ist jedoch die mögliche Update-Inkonsistenz die allerdings durch CoW-Snapshots oder das A/B-Schema gelöst werden kann.
Die paketbasierten Updates stellen den Stand der Technik da und erfüllen moderne Anforderungen an die Updategeschwindigkeit wie z.B: vom Cyper Resiliance Act vorgegeben.

Praxis: Paketbasierte Updates sind der De‑facto‑Standard bei Linux Servern und werden auch auf Desktops eingesetzt. Auch Windows-Systeme nutzen paketbasierte Updateverfahren.


Datenerhalt bei Updates

Insbesondere bei image-basierten Updates stellt sich die Frage, wie Nutzerdaten erhalten bleiben, da ein vollständiges Image oft alle bestehenden Daten überschreibt.

Die einfachste Lösung:
Nutzerdaten auf einer separaten, persistenten Partition speichern.

Bei paketbasierten Updates ist dies meist kein Problem, da Systemdateien gezielt aktualisiert werden und Nutzerdaten unangetastet bleiben.

Rollback und Datenkompatibilität

Ein besonderes Augenmerk gilt der Kombination von Rollbacks und Nutzerdaten. Alte Softwareversionen können oft keine neueren Datenformate lesen oder verarbeiten. Diese Herausforderung muss applikationsseitig gelöst werden – unabhängig von der gewählten Update-Strategie.


Updates absichern

Gerade bei älteren Embedded-Systemen fehlen häufig Sicherheitsmaßnahmen wie Verschlüsselung oder Signaturprüfung. Das stellt nach heutigen Standards ein erhebliches Sicherheitsrisiko dar.

Als Mindeststandard empfiehlt sich:

  • Digitale Signaturen der Updateartefakte (z. B. GPG) und Verifikation auf dem Gerät.
  • Transportverschlüsselung (TLS) für den Download.

Bei paketbasierten Systemen ist die Signaturprüfung meist im Paketmanager integriert. Bei image‑basierten Updates übernimmt der Bootloader oder ein Update‑Agent die Verifikation.


Fazit

Die Wahl der richtigen Updatestrategie ist zentral für das Produktdesign und sollte an Speicherbudget, Netzbedingungen, Release‑Frequenz, Sicherheitsanforderungen und erwartete Lebensdauer angepasst werden:

  • Häufige, kleine Sicherheits‑/Feature‑Updates → paketbasierter Ansatz, idealerweise mit Snapshots oder A/B-Schema.
  • Seltene, große Releases & maximale Robustheit → A/B‑Image‑Updates.
  • Alte Geräte und sehr wenig Speicher → In‑place‑Image, aber nur mit solider Verifikation und gutem Recovery‑Plan.

Unabhängig vom Ansatz gilt: Signaturen, saubere Datentrennung und geübte Rollback‑Prozesse sind nicht optional, sondern Voraussetzung für verlässliche, sichere Updates.