Windows Modules Installer defekt - Fehler 2 / TrustedInstaller defekt

- 03.08.2013
von Thomas Windscheif / Microlinc



Trustedinstaller error 2
Windows Modules Installer Fehler 2
Windows Modules Installer Das System kann die angegebene Datei nicht finden

Symptome:
Der PC lädt u. U. keine Updates mehr.

In der Ereignisanzeige wird folgender Fehler mit der Event-ID 7023 in regelmäßigen Abständen angezeigt:
"Windows Modules Installer" wurde mit folgendem Fehler beendet: Das System kann die angegebene Datei nicht finden

Beim Versuch eines manuellen Starts des Dienstes "Windows Modules Installer" / TrustedInstaller erscheint folgender Fehler:
"Fehler 2: Das System kann die angegebene Datei nicht finden."

Außerdem erscheint beim Versuch die Systemdateireparatur durchzuführen (sfc /scannow) folgender Fehler:
Der Windows-Ressourcenschutz konnte den Reparaturdienst nicht starten.

Diagnose:
Mittels der Analyse des Logbuchs unter C:\Windows\Logs\cbs.log findet man einen Core-Initialisierungsfehler


2013-08-02 11:42:08, Info CBS Starting TrustedInstaller initialization.
2013-08-02 11:42:08, Info CBS Loaded Servicing Stack v6.1.7601.17592 with Core: C:\Windows\winsxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7601.17592_none_672ce6c3de2cb17f\cbscore.dll
2013-08-02 11:42:08, Info CBS Failed to load core resources DLL from path: C:\Windows\servicing\CbsMsg.dllC:\Windows\winsxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7601.17592_none_672ce6c3de2cb17f\CbsMsg.dll [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
2013-08-02 11:42:08, Info CBS Failed to initialize core resources. [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
2013-08-02 11:42:08, Info CBS Failed to initialize the Core DLL: C:\Windows\winsxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7601.17592_none_672ce6c3de2cb17f\cbscore.dll [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
2013-08-02 11:42:08, Info CBS Failed to initialize CBS Core. [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
2013-08-02 11:42:08, Info CBS Ending TrustedInstaller initialization.
2013-08-02 11:42:08, Info CBS Failed to initialize Trusted Installer. [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
2013-08-02 11:42:08, Info CBS Starting TrustedInstaller finalization.
2013-08-02 11:42:08, Info CBS Trusted Installer core was not initialized.
2013-08-02 11:42:08, Info CBS Ending TrustedInstaller finalization.



Aus irgendeinem Grund versucht der Dienst den gesamten String zu öffnen, bei einem Tracing via procmon bestätigt sich der Verdacht. Nach einem Vergleich der Versionen der Dateien im winsxs-Ordner und im servicing-Ordner stellte sich heraus, dass verschiedene Dateiversionen vorliegen.

Lösung:
Ich suchte dann im Netz auf den KB-Seiten von MS ob es eine aktuelle Version des CBS gibt (Version 6.1.7601.17592), da die zwischengespeicherten Versionen auf dem System unterschiedlich waren und auf der Installations-CD eine noch ältere Version vorlag.

Das KB2533552 beinhaltete die z.Zt. aktuelle Version für Windows 7 x64 SP1. Leider wurde die automatische Installation via Doppelklick der MSU-Datei verwährt, sodass ich die Dateien erst manuell extrahieren musste und dann anschließend in den Ordner "C:\Windows\winsxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7601.17592_none_672ce6c3de2cb17f" kopieren konnte.

  1. Um die Dateien später hineinkopieren zu können müssen Sie erst Rechte auf die Ordner C:\Windows\servicing & C:\Windows\winsxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7601.17592_none_672ce6c3de2cb17f erhalten (nur System und TrustedInstaller haben per Default Vollzugriff). Sie müssen zuerst die Besitzrechte der Ordner übernehmen und anschließend den jeweiligen administrativen Benutzer mit Vollzugriff eintragen).

  2. Sichern Sie den Inhalt des Ordners "C:\Windows\winsxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7601.17592_none_672ce6c3de2cb17f" an einen beliebigen Ort.

  3. Sichern Sie die Datei "cbsms.dll" aus dem Ordner "C:\Windows\servicing\"

  4. Laden Sie das KB2533552 (KB-Artikel: http://support.microsoft.com/kb/2533552) herunter (evtl. ist eine Verifizierung Ihres Systems seitens Microsoft nötig).

  5. Erstellen Sie unter C:\ einen Ordner "msu_cbs".

  6. Kopieren Sie die heruntergeladene Datei in diesen Ordner.

  7. Expandieren Sie die Dateien aus der MSU-Datei mit folgendem Befehl:
    expand Windows6.1-KB2533552-x64.msu -f:* c:\msu_cbs

  8. Erstellen Sie einen Unterordner "temp".

  9. Expandieren Sie die nötige cab-Datei mit folgenden Befehl:
    expand Windows6.1-KB2533552-x64.cab -f:* c:\msu_cbs\temp1

  10. Wechseln Sie in den Unterordner "amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7601.17592_none_672ce6c3de2cb17f".

  11. Kopieren Sie den gesamten Inhalt dieses Ordners in den Ordner "C:\Windows\winsxs\amd64_microsoft-windows-servicingstack_31bf3856ad364e35_6.1.7601.17592_none_672ce6c3de2cb17f".

  12. Bestätigen Sie die Überschreib-Vorgänge

  13. Kopieren Sie die Datei "cbsmsg.dll" aus diesem Ordner in den Ordner "C:\Windows\servicing\". Bestätigen Sie evtl. erscheinenden Überschreib-Aufforderungen

  14. Starten Sie den Dienst nun via Dienstkonsole manuell, er sollte nun wieder wie gewohnt funktionieren. Sollte es dennoch Fehler geben, prüfen Sie nochmals das Logbuch für TrustedInstaller unter "C:\Windows\Logs\cbs.log"

  15. Sie sollten nach erfolgreichem Start des Dienstes auf jeden Fall eine Systemdateiüberprüfung starten um sicher zustellen, dass keine weiteren Systemdateien beschädigt wurden. Geben Sie hierzu als privilegierter Benutzer folgenden Befehl in die Eingabeaufforderung ein:
    sfc /scannow



Über Feedback würde ich mich freuen.
MICROL!NC - URL zum Artikel: http://microlinc.homeip.net/index.php?lev1=5&lev2=34&id=172 - Ausdruck vom 26.04.2024