Windows Update schlägt beim Installieren fehl und bricht mit Codes wie 0x800f0821, 0x800f0920 oder 0x80070422 ab? In den meisten Fällen stecken zwei Ursachen dahinter: ein defekter Update-Dienst oder ein beschädigter Komponentenspeicher (Component Store). Dieser Artikel zeigt die Microsoft-Empfehlungen mit konkreten PowerShell-Befehlen.

Fehler 0x80070422: Update-Dienst läuft nicht

Ursache: Der Windows-Update-Dienst (wuauserv) ist deaktiviert oder hängt. Windows Update kann dann gar keinen Installationsvorgang mehr starten.

Diagnose

Get-Service -Name wuauserv | Select-Object Status, StartType

Erwartet wird Status „Running“ und Starttyp „Manual“. Steht der Dienst auf „Stopped“ oder „Disabled“, ist die Ursache gefunden.

Lösung

Set-Service -Name wuauserv -StartupType Automatic
Start-Service -Name wuauserv

Bei einem hängenden Dienst über die Taskleiste „Details“ den Prozess wuauserv beenden und dann erneut starten. Danach die Update-Suche erneut auslösen und den Vorgang beobachten.

Fehler 0x800f0821 und 0x800f0920: CBS-Timeout

Ursache: Die Installationsroutine (Component-Based Servicing) meldet über eine lange Zeit keinen Fortschritt, bis der interne Watchdog-Timer abläuft. Microsoft protokolliert dann 0x800f0821 (Abort) und unmittelbar danach häufig 0x800f0920 (Hang erkannt). Typische Fälle sind virtuelle Maschinen mit zu wenig CPU oder RAM.

Lösung

  1. Bei VMs: CPU und Arbeitsspeicher vorübergehend erhöhen, das Update abschließen, anschließend die Größe wieder anpassen.
  2. Stellen Sie sicher, dass mindestens das Update KB4493473 installiert ist – es verbessert die Wartungsstapel-Routinen.
  3. Schlägt das Update trotzdem fehl: Komponentenspeicher reparieren und die Update-Datenbank zurücksetzen (siehe unten).

Komponentenspeicher beschädigt: 0x800f0825, 0x800f081f, 0x800f0831, 0x80070570

Diese Codes beschreiben unterschiedliche Ausprägungen desselben Problems: Ein Update lässt sich nicht deinstallieren (0x800f0825), Quellen fehlen (0x800f081f), der CBS-Speicher ist korrupt (0x800f0831) oder Dateien sind unlesbar (0x80070570).

Diagnose

Select-String -Path "$env:windir/Logs/CBS/CBS.log" -Pattern "Error" | Select-Object -Last 20

Die letzte CBS.log im Ordner %WINDIR% (Unterordner Logs/CBS) enthält die genaue Fehlerstelle. Zeilen mit „Error“ suchen und anhand des Zeitstempels dem fehlgeschlagenen Update-Versuch zuordnen.

Lösung

dism.exe /Online /Cleanup-Image /RestoreHealth
sfc.exe /Scannow
Restart-Computer

Schlägt die Online-Reparatur fehl, eine Windows-Installationsmedien-Quelle verwenden (Buchstaben je nach Medium anpassen):

dism.exe /Online /Cleanup-Image /RestoreHealth /Source:wim:D:/sources/install.wim:1 /LimitAccess

Nach DISM und SFC ist ein Neustart erforderlich, weil geschützte Systemdateien erst dann vollständig ersetzt werden. Bei anhaltenden Problemen zusätzlich die Update-Datenbank zurücksetzen:

net stop wuauserv
Rename-Item "$env:SystemRoot/SoftwareDistribution" "SoftwareDistribution.bak" -Force
Rename-Item "$env:SystemRoot/System32/catroot2" "catroot2.bak" -Force
net start wuauserv

Beide Ordner werden beim nächsten Update-Lauf automatisch neu angelegt.

Fehler 0x80070005: Zugriff verweigert

Ursache: Berechtigungen an Dateien oder Registrierungsschlüsseln wurden geändert – häufig durch Drittanbieter-Antiviren-Software oder Filtertreiber.

Diagnose

Select-String -Path "$env:windir/Logs/CBS/CBS.log" -Pattern "ERROR_ACCESS_DENIED" | Select-Object -First 10

Aus den Protokollzeilen lässt sich ableiten, welches Objekt blockiert wird.

Lösung

  1. System im Sauberen Start neu starten oder den Antiviren-Filter temporär deaktivieren.
  2. Das blockierende Objekt aus der CBS.log identifizieren.
  3. Besitz und Berechtigungen korrigieren – für die meisten Systemobjekte ist TrustedInstaller der korrekte Eigentümer.
  4. Das Update anschließend erneut installieren.

FAQ

Wann läuft der CBS-Watchdog ab? Microsoft nennt keinen festen Wert. Der Timer feuert, wenn der Wartungsvorgang zu lange ohne Fortschritt bleibt. Die offizielle Empfehlung lautet: Ressourcen erhöhen und mindestens KB4493473 installieren.

Was bedeutet /LimitAccess bei DISM? Es wird ausschließlich die angegebene Quelle verwendet. Ohne erreichbares Medium oder Internet schlägt der Befehl fehl – ohne den Schalter würde DISM sonst auf Windows Update zurückgreifen.

Warum kommt 0x800f0920 nach 0x800f0821? Das ist das erwartete Folgeereignis: Der Abort wird vom Watchdog als Hang protokolliert. Beide Codes haben dieselbe Ursache.

Fazit

Die vier Fehlerfamilien lassen sich klar trennen: Dienst-Problem (0x80070422), CBS-Timeout (0x800f0821/0x800f0920), Komponentenspeicher (0x800f0825, 0x800f081f, 0x800f0831, 0x80070570) und Zugriffsrechte (0x80070005). Wer die CBS.log als Ausgangspunkt nimmt und in dieser Reihenfolge vorgeht, behebt die meisten Update-Fehlschläge ohne Neuinstallation.

Quellen

Hinweis: Dieser Beitrag wurde mit Unterstützung künstlicher Intelligenz (KI) erstellt.

Tags

No responses yet

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert