共用方式為


公用程式焦點PageDefrag

Lance Whitney

下載本文程式碼: PageDefrag (70KB)

一般的 Windows® 磁碟重組工具可以最佳化您硬碟機上的大多數檔案,但是某些項目卻令大多數的磁碟重組工具束手無策。已開啟並鎖定為專用的檔案,例如 Windows 分頁檔和登錄 Hive,通常無法由 Windows 內建的磁碟重組工具或其他廠商的公用程式處理。檔案正在使用中時,標準的 Windows API 無法支援這些檔案的磁碟重組功能。還好,由 Mark Russinovich 為 Sysinternals 建立的 PageDefrag 公用程式,可以成功地重組其他工具無法處理的項目。

PageDefrag 可以成功地重組 Windows 分頁檔、登錄 Hive、事件記錄檔及休眠檔案 (當筆記型電腦進入休眠模式時,儲存記憶體資料的磁碟區域)。該程式會在電腦開機過程中,於系統開始使用這些檔案時先將它們最佳化。

若要執行 PageDefrag,只需要按兩下 pagedfrg.exe 檔案。程式會顯示每一個它可以進行磁碟重組之檔案的名稱 (請參閱 [圖 1])。分頁檔的名稱為 pagefile.sys。登錄 Hive 會以各 Hive 的個別檔案 (DEFAULT、SAM、SECURITY、SOFTWARE 及 SYSTEM) 顯示。事件記錄檔會以個別檔案顯示;例如,AppEvent.evt 是應用程式記錄檔,SecEvent.evt 是安全性記錄檔,而 SysEvent.evt 是系統記錄檔。最後,休眠檔案則是 Hiberfil.sys。

圖 1 PageDefrag 會顯示每一個可以處理之檔案的名稱

圖 1** PageDefrag 會顯示每一個可以處理之檔案的名稱 **(按影像可放大)

在各檔案名稱的旁邊,會有一個 [Clusters] (叢集) 欄,其中會顯示磁碟上有多少個叢集已配置給該檔案,還會有一個 [Fragments] (片段) 欄,以指出磁碟上有多少個檔案的片段,亦即非連續性的檔案片段。根據此資料,您就可以判斷檔案是否需要進行磁碟重組。

您有兩個選項:您可以在下一次開機時進行檔案的重組,或在每一次開機時進行。除非檔案的使用率非常高,或者位於極少重新開機的伺服器或電腦上,否則僅在下一次開機時進行重組應該就可以了。您也可以啟用倒數功能,以便您在下一次電腦開機時可以取消磁碟重組作業。

您下一次重新開機時,系統會執行 chkdsk 命令,然後 PageDefrag 就會開始作業。已經組織成連續叢集的檔案會略過。有片段的檔案則會一一重組,以最佳化。程式會顯示正在進行磁碟重組的項目名稱,還會告訴您重組是否成功,以及在重組前和重組後所配置給檔案的叢集數目。

如果電腦上的可用磁碟空間不夠多,或是可用的空間也已經嚴重地劃分為多個片段,則 PageDefrag 有可能會無法進行重組檔案以最佳化。在這樣的情況下,您就需要先在 Windows 中執行磁碟重組工具來釋放可用空間,然後再嘗試執行 PageDefrag。

PageDefrag 的執行速度通常很快,因為它所處理的檔案數目不多。然而,如果檔案已劃分為很多個片段,則至少在第一次執行時,會需要花費較久的時間。PageDefrag 完成作業之後,Windows 就會正常地載入。您可再次開啟該程式,以確認每一個檔案都已經重組為單一片段。

您可以在命令列上以非互動式的方法執行 PageDefrag,或是在指令碼中使用 -e Defrag boot、-o Defrag once、-n Never Defrag 等選項,以及使用 -t Set countdown 選項來指定 pagedfrg.exe 檔案執行前的倒數時間。

若要進一步了解並下載此公用程式,請造訪 microsoft.com/technet/sysinternals/FileAndDisk/PageDefrag.mspx

Lance Whitney 身兼 IT 顧問、培訓講師和技術文件作家。他花了很多時間改良 Windows 工作站與伺服器。記者出身的 Lance 在 15 年前一頭栽進了 IT 產業。

© 2008 Microsoft Corporation and CMP Media, LLC. 保留所有權利;未經允許,嚴禁部分或全部複製.