CHKDSK 和新的/C 和/I 參數的說明

文章翻譯 文章翻譯
文章編號: 187941 - 檢視此文章適用的產品。
本文章的有 Microsoft Windows XP] 版本,請參閱 314835
全部展開 | 全部摺疊

在此頁中

結論

在 Windows NT 4.0 版服務套件 4 (SP4) 和 Windows 2000 Chkdsk.exe 已加入兩個新的參數。這些參數可讓使用者藉由執行 CHKDSK 或 AUTOCHK 累算所產生的停機時間,更方便管理。

會加入 Windows NT 4.0 SP4 和 Windows 2000 中的參數是/C 和 / 我,和是唯一有效,當目標磁碟機具有 NTFS 格式化。每個參數會指示 CHKDSK 常式,以略過某些動作,否則需要驗證 NTFS 資料結構的完整性。

警告 Microsoft 建議您不要使用與/f] 參數,Microsoft 不保證磁碟的完整性,如果 CHKDSK 程式中斷時中斷 CHKDSK 程序。

其他相關資訊

Chkdsk.exe 是命令列介面,對於驗證邏輯的 Windows 上的檔案系統完整性的程式。當 CHKDSK 遇到它採取行動來修復檔案系統資料的邏輯不一致性時,提供它不是處於唯讀模式。

當線上執行 CHKDSK 時,實際上會執行驗證程式碼都位於公用程式 DLL,例如 Untfs.dll 和 Ufat.dll。由 Chkdsk.exe 叫用 (Invoke) 的驗證常式是相同的磁碟區必須經過驗證,才能取得 Windows 檔案總管] 或 [磁碟系統管理員所提供的圖形化使用者介面時叫用。當 CHKDSK 排定在重新開機時執行時,另一方面,二進位包含驗證程式碼的模組是 Autochk.exe。Autochk.exe 是原生的 Windows 應用程式而執行早期足夠的系統開機順序,它沒有虛擬記憶體或其他 Win32 服務的好處。Autochk.exe 會產生相同類型的 DLL Chkdsk.exe 由叫用 (Invoke) 公用程式不會的文字輸出。但是除了顯示在螢幕上的這個輸出,在開機程序,Autochk.exe 也記錄事件至應用程式事件記錄檔包含最多的文字輸出為可容納到事件記錄檔的資料緩衝區之系統。

因為 Autochk.exe 和驗證程式碼中 Chkdsk.exe 所使用的公用程式 DLL 根據相同的原始程式碼,兩者都將被稱為一般 CHKDSK"整個本文的其餘部分。同樣地,如本文的重點在於只能以相對於 NTFS 磁碟區的 CHKDSK 行為的變更,它應該要瞭解,依主旨許可權 CHKDSK 並 such-和-such,"下列是: 「 CHKDSK 並 such-和-such 在 NTFS 磁碟區上執行時 」。

/ C 和/I 交換器的使用可能會導致甚至 CHKDSK 完成後,剩餘損毀的磁碟區,因為這些參數使用建議您不要除了在系統停機時間必須保存至最少的情況下。這些參數被為了具有更大的磁碟區和誰需要彈性地管理累算所產生的 CHKDSK 必須執行這類磁碟區上時的停機時間的使用者使用。

若要了解當它可能適合使用這類交換器,務必有的內部 NTFS 資料結構的種類可以進行,損毀時它會驗證一磁碟區以及有潛在後果規避 CHKDSK 的常見的驗證步驟,才會 CHKDSK 何種動作的一些基本了解。

CHKDSK 的活動會分成三個主要 「 階段 」 期間它會檢查所有在 「 中繼資料 」 磁碟區上的,並選擇性的第四個階段。 中繼資料是 「 資料關於資料 」。它是檔案系統負擔,所以到 speak,用來追蹤的所有磁碟區上檔案相關的所有項目。中繼資料會告訴配置單元將組成一個給定的檔案,何種配置單元都是免費的何種配置單位包含損毀磁區等等的資料。一個檔案的 「 內容 」 另一方面,稱為被 「 使用者資料。NTFS 保護它的中繼資料透過交易記錄檔的使用。因此未受保護使用者資料。

在其第一個階段期間 CHKDSK 說它確認檔案和計數從 0 到 100%完成在螢幕上顯示一則訊息。此階段 CHKDSK 會探討磁碟區的主檔案表格 (MFT) 中每個檔案記錄區段 (FRS)。每個檔案和目錄在 NTFS 磁碟區上的唯一識別由特定 FRS MFT 中,百分比完成 CHKDSK 顯示在這個階段是已經過驗證的 MFT %。這個階段期間會檢查每個內部一致性的 FRS CHKDSK,並建置兩個點陣圖,其中一個代表什麼 FRS 的用途及何種叢集磁碟區上的正在使用中的其他 representing。這個階段結尾 CHKDSK 知道什麼空間正在使用中,哪些空間是可 MFT 中以及在整個磁碟區上使用。NTFS 會持續追蹤的資訊儲存在這個點陣圖自己的允許 CHKDSK 比較其結果與 NTFS 的預存點陣圖在磁碟上儲存中。如果個差異它們會記下 CHKDSK 的輸出中。比方說如果已在使用中的 FRS 發現已損毀,磁碟叢集先前與相關聯 FRS 最後會標示為 CHKDSK 的點陣圖中可用,但標示為 「 使用中 」 根據為 NTFS 的點陣圖。

在其第二個階段期間 CHKDSK 說它檢驗索引,並會計算從 0 到 100%完成第二次在螢幕上顯示一則訊息。此階段 CHKDSK 會檢查每個磁碟區上索引。 索引是基本上 NTFS 目錄,在此階段的 CHKDSK 會顯示已的磁碟區上有要檢查的目錄總數的百分比完成百分比。這個階段期間 CHKDSK 會檢查內部一致性的磁碟區上的每個目錄,並也會驗證每個檔案和目錄由 MFT 中 FRS 表示參考的至少一個目錄。它也符合每個檔案或子目錄中每個目錄參考實際上以有效的 FRS MFT 中存在及檢查循環的目錄參考。最後,它可確認不同的時間戳記和檔案大小與檔案相關聯的資訊都是那些檔案的目錄清單中所有最新。這個階段結尾 CHKDSK 有能確保沒有孤兒 」 檔案和目錄的所有清單都是針對合法的檔案。失去關聯的檔案是一個用於合法的 FRS 存在,但其中未列於任何目錄。找到一個被遺棄的檔案時它可以經常是還原至其合法的目錄、 提供該目錄仍大約是。如果應該保留檔案的目錄不存在,CHKDSK 會在根目錄中建立一個目錄,並將檔案放在該處。如果目錄清單找不到該參考 FRS,不再正在使用中,或者,使用中,但不會對應到列在目錄中的檔案,目錄項目只是將會移除。

在其第三個階段期間 CHKDSK 說它確認第三個安全性描述元和計數從 0 到 100%完成時間在螢幕上顯示一則訊息。此階段 CHKDSK 會檢查每個與每個檔案及磁碟區上的目錄相關聯的安全性描述元。安全性描述元包含有關檔案或目錄、 檔案或目錄的 NTFS 權限的擁有者及稽核的檔案或目錄資訊的資訊。完成百分比在這種情況下是數量的百分之檔案和目錄在磁碟區上。CHKDSK 驗證每一個安全性描述元結構是格式正確和內部一致。它不會驗證列出的使用者或群組實際存在或授與權限受到任何適當的方式。

如果使用/R 參數,只會叫用的 CHKDSK 第四個階段。/ R 用來在磁碟區的可用空間中找出損毀的磁區。當使用/R CHKDSK 會嘗試讀取以確認該磁扇區可在磁碟區上的每個磁區。中繼資料相關聯的磁扇區讀取執行 CHKDSK,即使不使用/R 的自然的過程中。提供指定/R CHKDSK 的早期階段讀取使用者資料相關聯的磁區。無法讀取的磁區尋找時 NTFS 會加入包含該磁扇區至其清單壞叢集叢集並,如果叢集是在使用中,配置新的叢集來執行舊的工作。如果使用容錯容錯磁碟驅動程式,資料是復原,並寫入新配置的叢集。否則,新叢集填入 0xFF 位元組的圖樣。當 NTFS 正常操作期間遇到無法讀取的磁扇區時,它將會重新它們也對應相同的方式。因此,/R 參數通常是不必要,但它可以用於做為掃描整個磁碟區,如果磁碟懷疑有損毀的磁區的方便機制。

前一個段落提供只是最大的外框看 CHKDSK 實際上如何執行以確認 NTFS 磁碟區的完整性。有許多特定的檢查所做的每個階段期間和幾項的快速檢查之間有不被所提及的階段。而是,這是簡單大綱,更重要的 Facet CHKDSK 活動做下列討論有關執行 CHKDSK 及 SP4 中所提供的新參數的影響所需的時間為基礎。

在 CHKDSK 第一個和第三個階段,完成百分比指示器訂金相對較順暢。可以中會有一些 unevenness 速率在哪一個這些階段的進度。目前不在使用的 FRS 需要較少時間來處理比未那些正在使用中。較大的安全性描述元花更多時間處理比執行較小的等等。但完成百分比顯示整體,是該階段所需的實際時間相當精確表示。

也是 CHKDSK 的一樣不一定是 CHKDSK 的第二個階段。處理目錄所需的時間量與檔案或該目錄中所列的子目錄數目密切相關。但完成百分比列在這個階段是百分之目錄檢查,而不管事實,一些目錄會花較長的很多時間比其他處理的數目。比方說在具有許多小型的目錄和一個非常大的一個磁碟區,完成百分比可能會快速地從 0 進度為 10%完成,然後出現陷入長的時間之前迅速進行從 10 100%完成。因此,除非您對某些知道在磁碟區目錄是相對於它們包含,顯示 「 完成百分比 」 期間的檔案數目高度統一這個階段不能被視為可靠的實際的這個階段的剩餘時間表示。

若要選項,讓事情更糟的任何人意外 CHKDSK 中間的攔截到,CHKDSK 的第二個階段會是一個通常可以讓最長進入執行。

現在,應該清楚不必執行與磁碟區狀態播放多久 CHKDSK 一卷的許多因素將會執行。公式以預測在給定的磁碟區執行 CHKDSK 所需的時間就必須考慮到帳戶這類因素為檔案和目錄的數量、 磁碟區分散程度的一般也作為的主檔案表格在特別是否檔案有兩個長名稱且 8.3 格式名稱,且多少損毀實際上需要加以修正。也就是假設沒有任何硬體問題 (例如系統記憶體速度的磁碟或磁碟,CPU 速度數量等等。

而不是嘗試多久預測 CHKDSK 將移至給定的磁碟區會在指定的硬體平台上執行、 要說它可以需要數秒到數天--根據您特定的情況夠了。除非使用/R 指定的硬體平台的最大考量是檔案和目錄的數目而非絕對磁碟區的大小。也就是 50 GB 磁碟區,其中一個或兩個大型的資料庫檔案的將只需要執行提供未指定/R CHKDSK 秒的時間。如果指定/R CHKDSK 就必須讀取確認每個磁扇區在磁碟區上的並將之清楚地加入大幅大型磁碟區。在另一方面,甚至相對較小的磁碟區可能需要小時才能執行 CHKDSK 有數百個千分位或數以百萬計的小檔案--不論指定/R。

最好的方式預測 CHKDSK 多久會發生在指定的磁碟區上執行是實際執行僅讀取模式中的試用版執行期間內低系統使用量。必須小心使用這個技術,但是,三個原因:
  • 唯讀 CHKDSK 即將中止之前完成所有的三個階段如果較早的階段中遇到錯誤且容易產生錯誤報告在唯讀模式中的錯誤。也就是 CHKDSK,可能會報告磁碟已損毀,甚至當不沒有存在任何真實損毀。如果 NTFS 剛好修改 CHKDSK 檢查在同一時間一些程式活動的身份磁碟的區域,就會發生這個情況。若要正確地驗證磁碟區,磁碟區必須是在靜態狀態且唯一的方法,以保證該狀態是鎖定磁碟區。指定/F 或/R (這表示"F") 時,CHKDSK 只鎖定磁碟區。因此,您可能需要不止一次執行 CHKDSK,才能讓它完成唯讀模式中的所有階段。
  • 系統負載和 CHKDSK 是否正在執行線上或 Windows NT 開機順序設定期間可能會影響執行 CHKDSK 所需的時間。CHKDSK 是 CPU 和需要大量的磁碟。哪些因素會變成瓶頸會依賴特定硬體的案例卻,如果重型磁碟 I/O 或高 CPU 使用率移上唯讀的 CHKDSK,膨脹的同時將造成時間。而且,Autochk.exe 會比 Chkdsk.exe 不同的環境中執行。雖然 Autochk.exe 透過執行 CHKDSK 來 CHKDSK 提供的 CPU 和 I/O 資源的獨佔使用,它也 deprives CHKDSK 虛擬記憶體的好處。因此,雖然 Autochk.exe 會通常預期要執行速度比 Chkdsk.exe,相對較低的大量的 RAM 的系統都可能會針對 Chkdsk.EXE Autochk.exe 比對看到較長的時間。
  • 修復損毀新增到所需的時間。唯讀 CHKDSK 可以找到沒有顯著的損毀才來完成。如果磁碟降低次要損毀,時間修正該問題就會只稍微長度超過的所需的唯讀 CHKDSK。但是如果沒有主要傷害如可能會造成從一個嚴重頭損毀或其他主要硬體失敗執行 CHKDSK 所需的時間可以增加到損毀的檔案數目等比例。在極端情況下可能多個雙 CHKDSK 對所需時間。

引入/C] 和 [/ I 參數

/ C 參數會指示 CHKDSK 略過偵測循環目錄結構中的檢查。循環是非常少見的形式在其中一個子目錄有本身的祖系,損毀。使用/C 參數可以速度 CHKDSK 大約 1 到 2%。使用/C 可以也將目錄迴圈保留在 NTFS 磁碟區上。這種迴圈可能是無法從其餘樹狀目錄的存取,且可能會導致某些孤立在他們無法看到任何 Win32 應用程式--包括備份應用程式的意義的檔案數目。

/ I 參數會指示 CHKDSK 略過檢查比較那些項目與對應的 FRS 的目錄項目。因此,雖然目錄項目仍會檢查以會確定他們都是自我一致,它們並非一定一致與 CHKDSK 後也儲存在其相對應的 FRS 資料有執行與此參數作用中。通常使用/I 參數產生 CHKDSK 時間減少百分之 50 到 70。 完全多少快 CHKDSK 是使用這個參數會依存的檔案到目錄,比率等因素以及相對速度的磁碟 I/O 與 CPU 速度,因此,難事先預測。使用/I 參數可能會導致目錄剩餘了參照不正確的 FRS 或項目中剩餘的 FRS 未參考的任何目錄項目。最晚的情形是另一種形式的 orphaning。FRS 所代表該檔案可能是事實看不到所有 Win32 應用程式包括備份應用程式以外的所有方式不變。前者的大小寫的檔案可能會存在 ; 還應用程式遇到錯誤時嘗試存取它們時。

在磁碟區,偵測到磁碟損毀時,您有三個基本選擇

  • 不執行任何動作。對於任務關鍵的伺服器,應該是必要性的線上一天 24 小時,這通常是必要性的選擇。這個選項缺點是相對較小的損毀可以"snowball 」 到主要的損毀如果它不修復儘速後偵測它。因此,這個選項應該只能視為當追蹤系統時更重要的執行儲存在損毀的磁碟區上,因為所有損毀的磁碟區上的資料應該被視為 「 危險 」 CHKDSK 直到資料的完整性。
  • 執行完整 CHKDSK。這個選項會修復所有的檔案系統資料,還原可以復原的自動化程序的所有使用者資料。 這個選項缺點是完整 CHKDSK 可以需要停機數個小時的重要任務的伺服器在 inopportune 階段。
  • 執行使用/C 和/I 交換器的某些組合的縮寫的 CHKDSK。此選項修復得更少的時間比完整 CHKDSK 會要求,但不會修復可能存在的所有損毀到更大的問題可以"snowball"的損毀的種類。 完整 CHKDSK 仍然會需要在以保證,所有在復原可以復原的資料有些未來時間。
它應該被指 NTFS 並不保證已偵測到損毀後立即執行完整 CHKDSK,即使下列的磁碟損毀--執行個體的使用者資料的完整性。因此,可能有 CHKDSK 無法復原的檔案。而且,會復原檔案可能已在內部毀損執行 CHKDSK 後,甚至。它,因此,仍然非常重要的任務完成的重要資料受到保護的定期備份或其他強大的嚴重損壞修復方法的方式。

屬性

文章編號: 187941 - 上次校閱: 2007年2月19日 - 版次: 4.2
這篇文章中的資訊適用於:
  • Microsoft Windows NT Server 4.0, Terminal Server Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows NT Workstation 4.0 Developer Edition
  • Microsoft Windows NT 4.0 Service Pack 4
關鍵字:?
kbmt kbfea kbfix kbinfo KB187941 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:187941
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com