Deinstallieren „deinstallierbarer“ Windows-Updates

Einige Windows-Updates werden als permanent installiert und bieten keine Deinstallationsoption. Dieser Blogbeitrag zeigt, wie man die Deinstallation solcher Update-Pakete erzwingen kann (funktioniert von Windows 7 bis Windows 10).

Das Problem ist …

Wenn ein Update Probleme verursacht, können Sie die Systemsteuerung öffnen, zu Programme und Funktionen gehen und Installierte Updates auswählen. Alle installierten Updates werden aufgelistet.

Wenn Sie ein Update auswählen, wird eine Schaltfläche Deinstallieren angezeigt (siehe Screenshot oben). Wenn ein Update Probleme verursacht, ist es möglich, es zu deinstallieren und zu testen, ob die Probleme gelöst sind oder nicht. Bei einigen Update-Paketen ist die Schaltfläche Deinstallieren jedoch nicht verfügbar. Dies wurde mir nach der Installation des Wartungsstapel-Updates KB3177467 (vom 11. Oktober 2016) bewusst. Einige Nutzer berichten über Probleme. Die Untersuchung des genannten Updates zeigt, dass es für den Patch-Eintrag in der Liste der installierten Updates keine Schaltfläche zum Deinstallieren gibt.

Microsoft hat ein Dokument veröffentlicht, in dem erklärt wird, in welchen Fällen ein Patch nicht deinstallierbar ist. Die verfügbaren Optionen sind: „Versuchen Sie, das System in einen Zustand vor der Installation des Updates zurückzusetzen, indem Sie entweder die Systemwiederherstellung oder ein System-Backup verwenden“. Aber was ist zu tun, wenn diese Optionen nicht verfügbar sind?

Warum und wie macht Microsoft Updates deinstallierbar?

Einige Updates sind für Windows unerlässlich und tief in das System integriert. Service-Stack-Updates sind zwingend erforderlich, um weitere Updates zu installieren – auch Installer-Updates sind deinstallierbar. Microsoft deklariert solche Updates in der .msu-Datei als „permanent“, während normale Update-Pakete als „entfernbar“ angegeben werden. Manchmal wird in einem KB-Artikel erwähnt, dass das Update deinstallierbar ist.

Die Steuerung, ob ein Update permanent oder entfernbar ist, erfolgt in .mum-Dateien (mum steht für Microsoft Update Manifest), die in einem .msu-Paket enthalten sind. Eine .mum-Datei finden Sie nach der Installation eines Updates mit dem Ordner C:\Windows\servicing\Packages\.

.mum-Dateien sind einfache XML-Dateien, die Informationen über das Update enthalten (KB-Nummer, Sprachanforderungen, erforderlicher Neustart nach der Installation usw.

Das XML-Attribut permanency=“permanent“ kennzeichnet ein Update als nicht deinstallierbar, während ein fehlendes Attribut oder ein XML-Attributwert permanency=“removable“ ein Update als deinstallierbar kennzeichnet. Nur Updates mit einem fehlenden oder permanency=“removable“-Attribut sind über die Systemsteuerung oder über dism (Windows 8 und höher) deinstallierbar.

Ich habe diese Informationen hier (zu kurz) und in einem MS-Answers-Forumsthread (Beitrag von PhilipdayWF) gefunden.

Stopp: Die Deinstallation von Updates, die als „permanent“ gekennzeichnet sind, birgt das Risiko, dass weitere Updates aufgrund von schwerwiegenden Fehlern wie STATUS_SXS_COMPONENT_STORE_CORRUPT nicht installiert werden können – siehe Kommentare von magicandre1981 hier und hier. Hinweise zur Analyse von Update-Fehlern aufgrund von Wartungsfehlern finden Sie im Technet-Beitrag Advanced guidelines for diagnosing and fixing servicing corruption. Die Analyse von Aktualisierungsfehlern wird hier behandelt. Einige Informationen über die Struktur von .msu- und .cab-Dateien finden Sie hier.

Wie kann ich ein Update-Paket als „deinstallierbar“ markieren?

Nachdem ich vor den Risiken der Deinstallation nicht installierbarer Updates gewarnt habe (erstellen Sie einen Wiederherstellungspunkt oder ein Image-Backup, bevor Sie die unten beschriebenen Schritte ausprobieren), ist es an der Zeit, das oben beschriebene Know-how anzuwenden. Wir müssen die .mum-Datei des Updates öffnen und das XML-Attribut permanency=“permanent“ in „removable“ ändern. Dies kann mit dem Windows-Editor notepad.exe durchgeführt werden.

Es gibt nur ein Problem: Nur TrustedInstaller hat vollen Zugriff auf .mum-Dateien. Auf der oben verlinkten Website wird darauf hingewiesen, dass die Zugriffsrechte für die .mum-Datei geändert werden müssen, um ihren Inhalt zu bearbeiten. Aber das ist kompliziert (es kann über die Registerkarte Sicherheit in den Dateieigenschaften erfolgen) und unter Windows 7 endete die Zuweisung des Eigentums an einer .mum-Datei an die Gruppe Benutzer. Insgesamt mag ich es nicht, die Zugriffsrechte von Systemdateien zu ändern.

Eine Lösung, um den Zugriffsrechtskonflikt zu vermeiden, besteht darin, den Windows-Editor notepad.exe mit TrustedInstallers-Anmeldeinformationen auszuführen.

1. Gehen Sie auf die Website sodrum.org und laden Sie die portable Freeware PowerRun herunter, entpacken Sie das ZIP-Archiv in einen lokalen Ordner.

PowerRun

2. Starten Sie PowerRun (der Smartscreen-Filter erzeugt eine Warnung, dass das Tool unbekannt ist, so dass Sie es bestätigen und auch die UAC bestätigen müssen), wählen Sie notepad.exe und klicken Sie auf den Kontextmenübefehl Datei ausführen.

3. Wählen Sie im notepad-Fenster Datei – Öffnen und setzen Sie den Dateifilter auf Alle Dateien (*.*).

Mum-Datei editieren

4. Navigieren Sie in der Symbolleiste des Öffnen-Dialogs zum Ordner C:\Windows\servicing\Packages.

5. Geben Sie den Suchbegriff in das Suchfeld ein (z. B. KB3177467*.mum), um die relevanten Dateien zu filtern.

6. Wählen Sie die erste gefundene .mum-Datei aus und klicken Sie auf die Schaltfläche Öffnen, um die .mum-Datei zu laden.

mum-Datei ändern

7. Suchen Sie den Eintrag permanency=“permanent“ und ändern Sie ihn in permanency=“removable“

8. Speichern Sie die geänderte .mum-Datei – dies sollte möglich sein, da der Windows-Editor mit TrustedInstaller-Rechten läuft.

9. Wiederholen Sie die oben genannten Schritte für alle .mum-Dateien, die mit dem Update-Paket verknüpft sind (die oben gezeigten Screenshots für das Windows 7 Servicing Stack Update KB3177467 zeigen 3 .mum-Dateien).

Nachdem Sie alle .mum-Dateien geändert haben, können Sie versuchen, das Paket über die Systemsteuerung zu deinstallieren. Gehen Sie zu Programme und Funktionen und wählen Sie Installierte Updates. Wählen Sie das Update-Paket aus, und nun sollte eine Schaltfläche zum Deinstallieren verfügbar sein. Deinstallieren Sie das Paket und testen Sie, ob die Probleme verschwunden sind. Die Deinstallation sollte auch in einem Verwaltungskonsolenfenster mit dem folgenden Befehl möglich sein:

wusa /uninstall /kb:3177467 /quiet /norestart

wobei 3177467 für die KB-Nummer des Updates steht (siehe hier und hier). Diese Vorgehensweise sollte bei allen Windows-Versionen von Windows 7 bis Windows 10 funktionieren. Anschließend können Sie das System mit sfc /scannow (Windows 7) in einem administrativen Eingabeaufforderungsfenster auf beschädigte Systemdateien überprüfen.

Wie zentriert man Bilder in CSS?