FileMon for Windows v7.04

作者:Mark Russinovich 和 Bryce Cogswell

發佈日期: 2006 年 11 月 1 日


介紹

注意:從 Windows 2000 SP4、Windows XP SP2、Windows Server 2003 SP1 及 Windows Vista 開始的 Windows 版本,就已經以 Process Monitor 來取代 Filemon 與 Regmon。Filemon 與 Regmon 仍保留舊版的作業系統支援,包括 Windows 9x。

FileMon 會即時監控和顯示系統上的檔案系統活動。它的進階功能使其成為強大的工具,可探索 Windows 的運作方式、查看應用程式如何使用檔案與 DLL,或是追蹤系統或應用程式檔案組態的問題。Filemon 的時間戳記功能會精確地顯示每次開啟、讀取、寫入或刪除發生的時間,而且其狀態欄會告訴您結果。FileMon 是如此地容易使用,您將在幾分鐘之內變成專家。它會在您啟動它時開始監控,而且其輸出視窗可以儲存至檔案以供離線檢視。它有完整的搜尋功能,而且如果您覺得有太多的資訊無法負荷,只要設定一或多個篩選器即可。

FileMon 可在 NT 4.0、Windows 2000、Windows XP、Windows XP 與 Windows Server 2003 64 位元版本、Windows 2003 Server、Windows 95、Windows 98 及 Windows ME 上執行。

Filemon Screenshot

回到頁首 回到頁首


安裝和使用

如果您有任何問題請造訪 Sysinternals Filemon 論壇。

直接執行 FileMon (filemon.exe)。您必須擁有系統管理員權限才能執行 FileMon。當 FileMon 第一次啟動時,它將會監控所有的本機硬碟。功能表、快速鍵或是工具列按鈕可用以清除視窗、選取和取消選取包括網路磁碟區的受監控磁碟區 (Windows NT/2K/XP)、將受到監控的資料儲存到檔案,以及篩選和搜尋輸出。

如果您已指定篩選,則 FileMon 將在每次啟動它時,要求您確認上次工作階段所使用的篩選器。若要啟動 FileMon 但不想要它提示您,請在命令列上指定 /q 參數。當 FileMon 自動地啟動它時會擷取檔案系統活動。若要啟動它並停用擷取,請在命令列上使用 /o 參數。

因為事件已列印至輸出,所以會以序列號碼來標示它們。如果 Filemon 的內部緩衝區在極度繁忙的活動期間已溢出,這將會在序列號碼中以間隔來反映。

每次您結束 FileMon 時,它會記得您已設定的篩選器、視窗的位置以及輸出資料行的寬度。

回到頁首 回到頁首


篩選

使用「篩選器」對話方塊 (使用工具列按鈕或是選取 [編輯]| [篩選器]/[醒目提示] 功能表) 來選取將顯示在清單檢視中的資料。'*' 萬用字元會符合自定字串,而篩選器則是不區分大小寫。只有顯示在包含篩選器中但未被排除篩選器排除的符合項目才會顯示。使用 ';' 在篩選器中分隔多個字串 (例如 "filemon;temp")。Windows NT/2000 附註:由於檔案 I/O 的非同步性質,所以不可能篩選結果欄位。

例如,如果包含篩選器是 "c:\temp",而排除篩選器是 "c:\temp\subdir",則除了在 c:\temp\subdir 下的檔案與目錄外,所有在 c:\temp 之下的檔案與目錄的參照都會受到監控。

萬用字元允許複雜的模式比對,使得特定的應用程式存取特定的檔案變得可能。包含篩選器 "Winword*Windows" 將會使 FileMon 只顯示 Microsoft Word 可以存取的檔案與目錄並且其中包括 "Windows" 這個字。

使用醒目提示篩選器以指定想要在清單檢視輸出中醒目提示的輸出。使用 [編輯]|[醒目提示色彩] 來選取醒目提示色彩。

其他的篩選選項會選取或取消選取讀取、寫入或開啟作業。例如,在許多疑難排解的案例中,只有開啟作業是有關係的。

回到頁首 回到頁首


選取磁碟區 (Windows NT/2K/XP/2K3)

「磁碟區」功能表可用以選取和取消選取受監控的磁碟區。選取「網路」功能表項目以監控對任何網路資源的存取,包括遠端共用以及可存取遠端磁碟區的 UNC 路徑名稱。

回到頁首 回到頁首


限制輸出

「歷程記錄深度」對話方塊是透過工具列按鈕或 [編輯]|[歷程記錄] 功能表項目來存取,可讓您指定在輸出視窗中將記得的最大行數。深度 0 是用以表示沒有限制。

回到頁首 回到頁首


搜尋輸出

您可以使用 [尋找] 功能表項目在輸出視窗中搜尋字串 (或尋找工具列按鈕)。您可以使用 F3 鍵來向下搜尋並使用 Shift+F3 來向上搜尋。若要在輸出中的特定行開始搜尋,請按一下最左邊的欄來選取所需的行 (索引號碼)。如果沒有選取行,則會在向下搜尋時於第一個項目開始新搜尋,並在向上搜尋時於最後一個項目開始新搜尋。

回到頁首 回到頁首


選項

FileMon 可以將事件加上時間戳記或顯示其持續時間。[選項] 功能表與時鐘工具列按鈕可讓您在兩個模式之間切換。在工具列上的按鈕以時鐘或馬錶顯示目前的模式。在輸出中的 [時間] 欄位顯示持續時間時,會顯示基礎檔案系統服務特定要求時所花費的秒數。[選項]|[顯示毫秒] 功能表項目讓您新增毫秒解決方案至 FileMon 顯示的時鐘時間。

您可以使用 [選項]|[最上層顯示] 功能表項目來切換 FileMon 使視窗永遠都保持在最上層。除此之外,您可以透過 [選項]|[自動捲動] 功能表項目或是對應的工具列按鈕,來切換 FileMon 使其不捲動清單檢視。

回到頁首 回到頁首


具名管道與郵件插槽

從 4.1 版開始,FileMon 就可以在 Windows NT/2K 上監控具名管道與郵件插槽檔案系統活動。具名管道通常是做為 NT/Win2K 中由核心子系統 (例如 LSASS) 及 DCOM 所使用的通訊機制。像是瀏覽器服務等網路元件也使用它們。若要使用 FileMon 來查看具名管道活動,請選取 [磁碟機] 功能表中的具名管道,並在共用的網路資源上執行操作,或是開啟像是可與安全性子系統互動的 Regedt32 等應用程式。

回到頁首 回到頁首


FileMon 如何運作

對於 Windows 9x 驅動程式而言,FileMon 的核心是在虛擬裝置驅動程式 Filevxd.vxd 中。它是以動態方式載入,而且在其初始化時,它會透過 VxD 服務 IFSMGR_InstallFileSystemApiHook 來安裝檔案系統篩選器,以便將自己插入所有檔案系統要求的呼叫鏈中。在 Windows NT 上,FileMon 的核心是檔案系統驅動程式,此驅動程式可建立並附加篩選器裝置物件至目標檔案系統裝置物件,這樣 FileMon 才會看到所有的 IRP 與導向磁碟機的 FastIO 要求。當 FileMon 看到開啟、建立或關閉呼叫時,它會更新做為內部檔案控制代碼與檔案路徑名稱之間對應的內部雜湊表。每當它看到以控制代碼為基礎的呼叫時,就會查詢雜湊表中的控制代碼以取得要顯示的完整名稱。如果以控制代碼為基礎的存取參照了在啟動 FileMon 之前開啟的檔案,FileMon 將無法在其雜湊表中找到對應,而且將會直接改顯示控制代碼的值。

關於存取的資訊將會傾印至 ASCII 緩衝區,而該緩衝區則會定期複製到 GUI,以利在其清單方塊中列印。

回到頁首 回到頁首


相關公用程式

以下是在 Sysinternals 提供的一些其他監控工具:

回到頁首 回到頁首


更多相關資訊

下列是關於 Windows 9x 檔案系統的其他資訊來源:

  • Windows 95/98 DDK

  • "Examining the Windows 95 Layered File System," by Mark Russinovich and Bryce Cogswell, Dr. Dobb's Journal, December 1995

  • "Systems Programming for Windows 95," by Walter Oney, Microsoft Press, 1996 (a must-have for VxD writers)

  • "Inside the Windows 95 File System," by Stan Mitchell, O'Reilly and Associates, 1996

These are sources of information on the Windows NT/2000 file system and/or FileMon:

  • Inside Windows 2000, 3rd Edition by David Solomon and Mark Russinovich, 2000

  • "Examining The Windows NT File System," by Mark Russinovich and Bryce Cogswell, Dr. Dobb's Journal, Febrary 1997

  • "Inside NT Utilities," Windows NT Magazine, February 1999.

  • "Windows NT File System Internals," by Rajeev Nagar, O'Reilly and Associates, 1997

回到頁首 回到頁首


Microsoft Filemon 知識庫文章

這些 Filemon 的知識庫文章參考可協助診斷或疑難排解各種問題:

下載 Filemon (280 KB)

回到頁首 回到頁首