FileMon für Windows 7.04
Von Mark Russinovich und Bryce Cogswell
Veröffentlicht: 01. Nov 2006
Einführung
Hinweis: Filemon und Regmon wurden in Windows ab Windows 2000 SP4, Windows XP SP2, Windows Server 2003 SP1 bzw. Windows Vista durch Process Monitor ersetzt. Zur Unterstützung älterer Betriebssysteme wie Windows 9x werden Filemon und Regmon weiter beibehalten.
Mit FileMon lassen sich die Dateisystemaktivitäten auf einem System in Echtzeit überwachen und anzeigen. Dank der erweiterten Funktionen ist dieses leistungsfähige Tool in der Lage, die Arbeitsweise von Windows zu untersuchen, die Nutzung von Dateien und DLLs in Anwendungen zu ermitteln und Probleme in System- oder Anwendungsdateikonfigurationen aufzuspüren. Das Zeitstempelfeature von Filemon zeigt den genauen Zeitpunkt, an dem eine bestimmte Datei geöffnet, gelesen, geschrieben oder gelöscht wurde, und die Statusspalte zeigt das Ergebnis. FileMon ist so leicht zu bedienen, dass Sie in Minutenschnelle zu einem Experten bezüglich seiner Verwendung werden. Die Überwachung beginnt, sobald Sie das Tool starten. Das Ausgabefenster kann zudem für die Offlineanzeige in einer Datei gespeichert werden. Das Tool bietet eine umfassende Suchfunktion, und falls Sie einmal zu viele Informationen erhalten, aktivieren Sie einfach einen oder mehrere Filter.
FileMon ist unter NT 4.0, Windows 2000, Windows XP, unter der 64-Bit-Edition von Windows XP und Windows 2003 Server, unter Windows 2003 Server, Windows 95, Windows 98 und Windows ME funktionsfähig.
.gif)
Zum Seitenanfang
Installation und Verwendung
Bei Fragen oder Problemen besuchen Sie das Sysinternals Filemon Forum.
Führen Sie einfach FileMon (filemon.exe) aus. Zum Ausführen von FileMon müssen Sie Administratorrechte besitzen. Wenn Sie FileMon zum ersten Mal starten, werden alle lokalen Festplatten überwacht. Mit den Menüs, den Tastenkombinationen und den Schaltflächen in der Symbolleiste können Sie das Fenster leeren, die zu überwachenden Volumes (bei Windows NT, Windows 2000 und Windows XP auch Netzwerkvolumes) auswählen und die Auswahl wieder aufheben, die überwachten Daten in einer Datei speichern sowie die Ausgabe filtern und durchsuchen.
Wenn Sie Filter festgelegt haben, werden Sie bei jedem Start von FileMon aufgefordert zu bestätigen, dass die Filter aus der letzten Sitzung verwendet werden sollen. Um FileMon ohne diese Aufforderung zu starten, geben Sie den Schalter /q in der Befehlszeile ein. Beim Starten von FileMon werden die Dateisystemaktivitäten automatisch erfasst. Soll das Tool ohne Erfassung gestartet werden, geben Sie den Schalter /o in der Befehlszeile ein.
Sobald die Ereignisse in die Ausgabe eingetragen werden, erhalten sie eine fortlaufende Nummer. Falls die internen Puffer von Filemon aufgrund äußerst hoher Aktivitäten überlaufen, ist dies an Lücken in der laufenden Nummer erkennbar.
Beim Beenden von FileMon werden die konfigurierten Filter, die Position des Fensters und die Breite der Ausgabespalten gespeichert.
Zum Seitenanfang
Filterung
Im Dialogfeld „Filter“, das über die entsprechende Schaltfläche in der Symbolleiste sowie im Menü „Edit“ mit dem Befehl „Filter/Highlight“ geöffnet werden kann, geben Sie die Daten an, die in der Listenansicht angezeigt werden sollen. Mit dem Platzhalterzeichen „*“ werden beliebige Zeichenfolgen berücksichtigt, und bei den Filtern wird nicht zwischen Groß- und Kleinschreibung unterschieden. Es werden nur solche Übereinstimmungen aufgeführt, die mit dem Einschlussfilter gefunden und nicht durch den Ausschlussfilter ausgeschlossen werden. Trennen Sie mehrere Zeichenfolgen in einem Filter durch Semikolons (;), z. B. „filemon;temp“. Hinweis zu Windows NT/Windows 2000: Aufgrund der asynchronen Datei-E/A ist es nicht möglich, nach dem Ergebnisfeld zu filtern.
Beim Einschlussfilter "c:\temp" und dem Ausschlussfilter "c:\temp\subdir" werden alle Verweise zu Dateien und Verzeichnissen unter "c:\temp" überwacht, mit Ausnahme der Elemente im Pfad "c:\temp\subdir".
Mithilfe von Platzhaltern können Sie auch eine komplexere Mustersuche durchführen, mit der Sie beispielsweise den Zugriff auf bestimmte Dateien durch bestimmte Anwendungen ermitteln. Beim Einschlussfilter "Winword*Windows" gibt FileMon nur die Zugriffe von Microsoft Word auf Dateien und Verzeichnisse aus, die das Wort "Windows" enthalten.
Mit dem Markierungsfilter legen Sie die Ausgabe fest, die in der Listenansicht hervorgehoben werden soll. Wählen Sie die Hervorhebungsfarben mit dem Befehl "Edit" | "Highlight Colors" aus.
Mit weiteren Filteroptionen können Sie Lese-, Schreib- und Öffnungsvorgänge auswählen und die Auswahl dieser Vorgänge wieder aufheben. In vielen Problembehandlungsszenarios sind beispielsweise nur Öffnungen von Interesse.
Zum Seitenanfang
Auswählen von Volumes (Windows NT/Windows 2000/Windows XP/Windows 2003)
Über das Menü „Volumes“ können Sie die zu überwachenden Volumes auswählen und diese Auswahl wieder aufheben. Mit dem Menübefehl „Network“ wird der Zugriff auf alle Netzwerkressourcen überwacht, also auch der Zugriff auf Remotefreigaben sowie der Zugriff auf Remotevolumes per UNC-Pfadname.
Zum Seitenanfang
Beschränken der Ausgabe
Im Dialogfeld "History Depth", das über die entsprechende Schaltfläche in der Symbolleiste sowie im Menü "Edit" mit dem Befehl "History" geöffnet werden kann, legen Sie die maximale Anzahl der Zeilen fest, die im Ausgabefenster dargestellt werden sollen. Eine Tiefe von 0 bedeutet, dass keine Beschränkung vorliegt.
Zum Seitenanfang
Durchsuchen der Ausgabe
Mit dem Befehl "Find" bzw. mit der Schaltfläche für die Suche in der Symbolleiste können Sie das Ausgabefenster nach bestimmten Zeichenfolgen durchsuchen. Mit F3 wiederholen Sie die Suche in Vorwärtsrichtung, mit Umschalt+F3 in Rückwärtsrichtung. Soll die Suche an einer bestimmten Zeile der Ausgabe gestartet werden, markieren Sie diese Zeile. Klicken Sie hierzu auf die ganz linke Spalte (die Indexnummer). Ist keine Zeile ausgewählt, beginnt die Suche mit dem ersten Eintrag (Suche in Abwärtsrichtung) bzw. mit dem letzten Eintrag (Suche in Aufwärtsrichtung).
Zum Seitenanfang
Optionen
Bei FileMon können die Ereignisse wahlweise mit einem Zeitstempel versehen oder mit ihrer Dauer angezeigt werden. Über das Menü "Options" und die Uhrschaltfläche in der Symbolleiste wechseln Sie zwischen diesen beiden Modi. Die Schaltfläche in der Symbolleiste enthält eine Uhr oder eine Stoppuhr, je nach dem gerade ausgewählten Modus. Wenn die Ereignisdauer in der Ausgabe im Feld "Time" dargestellt werden soll, wird hier der Zeitraum in Sekunden aufgeführt, den die Ausführung bestimmter Anforderungen im zugrunde liegenden Dateisystem in Anspruch genommen hat. Über den Befehl "Options" | "Show Millisecond" lassen Sie auch die Millisekunden für die Zeitdauer in FileMon anzeigen.
Mit dem Befehl "Options" | "Always On Top" legen Sie fest, dass FileMon immer im Vordergrund bleibt. Darüber hinaus können Sie mit dem Befehl "Options" | "Auto Scroll" oder der entsprechenden Schaltfläche in der Symbolleiste angeben, ob in FileMon ein Bildlauf der Listenansicht durchgeführt werden soll oder nicht.
Zum Seitenanfang
Named Pipes und Mailslots
Ab Version 4.1 ist FileMon in der Lage, die Named Pipe- und Mailslot-Dateisystemaktivitäten unter Windows NT und Windows 2000 zu überwachen. Named Pipes dienen in der Regel als Kommunikationsmittel für wichtige Subsysteme in Windows NT/Windows 2000 (z. B. für das lokale Sicherheitsautoritäts-Subsystem, Local Security Authority Subsystem, LSASS) und werden auch durch DCOM verwendet. Auch bei Netzwerkkomponenten wie dem Browserdienst kommen sie zum Einsatz. Um die Named Pipe-Aktivitäten mit FileMon abzurufen, wählen Sie im Menü „Drives“ den Befehl „Named Pipes“, und führen Sie einen Vorgang auf einer freigegebenen Netzwerkressource aus, oder öffnen Sie eine Anwendung wie Regedt32, die mit dem Sicherheitssubsystem interagiert.
Zum Seitenanfang
Funktionsweise von FileMon
Beim Windows-9x-Treiber liegt das Kernstück von FileMon im virtuellen Gerätetreiber "Filevxd.vxd". Dieser Treiber wird dynamisch geladen, und bei der Initialisierung wird ein Dateisystemfilter über den VxD-Dienst IFSMGR_InstallFileSystemApiHook installiert, der sich in die Aufruffolge aller Dateisystemanforderungen einfügt. Unter Windows NT besteht das Kernstück von FileMon in einem Dateisystemtreiber, mit dem Filtergeräteobjekte erstellt und an Zieldateisystem-Geräteobjekte angehängt werden, sodass alle IRPs und FastIO-Anforderungen an Laufwerke für FileMon sichtbar werden. Wenn FileMon einen Aufruf zum Öffnen, Erstellen oder Schließen erkennt, wird eine interne Hashtabelle aktualisiert, die als Zuordnung zwischen internen Dateihandles und Dateipfadnamen fungiert. Bei handlegestützten Aufrufen wird das entsprechende Handle in der Hashtabelle nachgeschlagen, um so den vollständigen Namen für die Anzeige abzurufen. Wenn ein handlegestützter Zugriff auf eine Datei verweist, die vor dem Starten von FileMon geöffnet wurde, kann FileMon die Zuordnung in der Hashtabelle nicht finden. Stattdessen wird einfach der Wert des Handles angezeigt.
Die Informationen zu den Zugriffen werden in einem ASCII-Puffer gespeichert, der in regelmäßigen Abständen zur grafischen Benutzeroberfläche kopiert und dort im Listenfeld ausgegeben wird.
Zum Seitenanfang
Weitere Informationen
Zusätzliche Informationsquellen zum Dateisystem von Windows 9x:
- Das Windows 95/98 DDK
- "Examining the Windows 95 Layered File System" von Mark Russinovich und Bryce Cogswell, Dr. Dobb's Journal, Dezember 1995
- "Systems Programming for Windows 95" von Walter Oney, Microsoft Press, 1996 (für VxD-Entwickler unerlässlich)
- "Inside the Windows 95 File System" von Stan Mitchell, O'Reilly und Partnern, 1996
Informationsquellen für das Dateisystem Windows NT/2000 und/oder FileMon:
- Inside Windows 2000, 3rd Edition von David Solomon und Mark Russinovich, 2000
- "Examining The Windows NT File System" von Mark Russinovich und Bryce Cogswell, Dr. Dobb's Journal, Februar 1997
- "Inside NT Utilities", Windows NT Magazine, Februar 1999.
- "Windows NT File System Internals" von Rajeev Nagar, O'Reilly und Partnern, 1997
Knowledge BaseArtikel zu Microsoft Filemon
Die nachstehenden Knowledge BaseArtikel befassen sich mit der Diagnose oder Behebung verschiedener Probleme mit Filemon: