Wie liest man CBS Logs (SFC) schnell und effektiv aus?

Randy89

Captain
Registriert
Mai 2013
Beiträge
3.287
Vorgeschichte:

Aufgrund einer gewollten Änderung des Startsounds, welches nur durch den Austausch der imageres.dll aus dem System32 Ordner (+dem sowieso deaktivierten Schnellstart) erfolgte, kommt mithilfe des System File Checkers (sfc /verifyonly, damit er nur überprüft und nichts automatisch ändert) eine Meldung, dass vom Windows Ressourcen-Schutz beschädigte Dateien gefunden seien.

Soweit, so gut. Also die CBS.log geöffnet:
Anhang anzeigen CBS.log.zip

und mithilfe von Strg+F sowie dem Stichwort "imageres" (ohne Anführungszeichen) gleich den folgenden Eintrag gefunden:
2014-10-23 14:42:16, Info CSI 0000024c Hashes for file member \??\C:\Windows\System32\imageres.dll do not match actual file [l:24{12}]"imageres.dll" :


Nun zur eigentlichen Fragenstellung:

Wie kann ich effektiv nach potentiellen, weiteren beschädigten Dateien suchen, ohne erst umständlich die Änderungen entweder über sfc /scannow oder über den Austausch mit der originalen imageres.dll zurückzunehmen und im Anschluss erneut den System File Checker auszuführen, nur um nachher wieder die imageres.dll erneut auszutauschen?
Gibt es möglicherweise bestimmte Stichpunkte, nach der man möglichst einfach die CBS.log auslesen kann?
 
Zuletzt bearbeitet:
Ich mache es so:

findstr /c:"[SR]" CBS.log >sfcdetails.txt

Dann hast du in der sfcdetails.txt alle wichtigen Infos.
 
Die sfcdetails.txt wird bei mir anscheinend nicht erstellt. Weder mit dem Befehl (CMD explizit als Admin ausgeführt) im Link von miac, noch mit einem angepassten Befehl (=Pfadänderung) zu einer Kopie in meinem Desktop-Ordner, bzw. eines benutzerdefinierten Ordners.

Ok, wenn man die Datei in irgendeinem beliebigen Verzeichnis, auf der man auch ohne besondere Admin-Rechte Zugriff hat, kopiert, und die Eingabeaufforderung mit gedrückter Shift-Taste+Rechtsklick direkt in demselben Verzeichnis öffnet und dann den Befehl eingibt, funktionierts.

Oder man öffnet eine normale Eingabeaufforderung, gibt zuerst cd desktop, um in das Verzeichnis vom Desktop mit einer Kopie der CBS.log zu wechseln und gibt dann erst in der nächsten Zeile den Befehl von MagicAndre1981 ein.

Oder als dritte Möglichkeit noch: man wechselt von der Admin-CMD mit cd.. (2 Punkte nach "cd") ein Verzeichnis rauf und mit cd logs und anschließendem cd cbs in das eigentliche Verzeichnis und dann funktionieren beide Befehle.

Darauf muss man aber erstmal kommen. :o

Wie es aussieht, müsste ich dann nur nach "corrupt" suchen, um den einzigen Eintrag mit der imageres.dll zu finden. :D

Aber ich muss schon sagen, dass das mit dem dism log (dism /online /cleanup-image /restorehealth) wesentlich einfacher ist. Da braucht man nur nach "summary" (ohne Anführungszeichen) von unten nach oben zu suchen und wenn da überall Nullen stehen, ist laut dem Log alles ok. ;)

Danke euch beiden für die Hilfe. :)
Ergänzung ()

Nur aus reiner Interesse noch gefragt: Kann man gewisse Änderungen whitelisten lassen, dass die Meldung über die beschädigte Dateien für eine bestimmte Datei nicht mehr kommt oder wird diese Möglichkeit aufgrund von Sicherheits-Bedenken nicht gestattet?
Ergänzung ()

Ok, Thema "whitelisting" hat sich damit erledigt:

http://www.sevenforums.com/general-discussion/26516-white-listing-files-sfc.html

Immerhin kann man mit dem Parameter /verifyonly arbeiten (was nichtmal in dem Link oben erwähnt wird), damit nicht gleich alles automatisch "repariert" wird.
 
Zuletzt bearbeitet:
das geht nicht. Nervt mich aus, wenn man MSC Dateien im Admin Modus anpasst, meckert sfc immer.
 
Zurück
Oben