新的/C 和可供使用具有 Chkdsk.exe/I 選項的說明

Windows XP 支援已結束

Microsoft 於 2014 年 4 月 8 日結束對 Windows XP 的支援。此變更已影響您的軟體更新和安全性選項。 瞭解這對您的意義為何且如何持續受保護。

重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。

按一下這裡查看此文章的英文版本:314835
本文已封存。本文係以「現狀」提供且不會再更新。
這篇文章 Microsoft Windows 2000 和 Windows NT 4.0 版本,請參閱 187941
結論
本文將告訴您兩個新的參數、 / C 參數和隨附於 Windows XP 中 CHKDSK 程式/I 切換控制。這些參數,啟用更好管理的當您執行 CHKDSK 或 AUTOCHK 時所發生的停機時間。

警告 Microsoft 建議您不要使用/f 參數使用時中斷 chkdsk 程序。如果 chkdsk 程式遭到中斷,Microsoft 並不保證磁碟的完整性。
其他相關資訊
Chkdsk.exe 是命令列介面,會驗證邏輯的檔案系統完整性的之 CHKDSK] 程式。如果 CHKDSK 中遭遇檔案系統資料的邏輯不一致 CHKDSK 會執行修復檔案系統資料 (假設資料不處於唯讀模式) 的動作。

/ C] 和 [/ I 參數是有效的僅供在 NTFS 檔案系統格式化的磁碟機。每個新的參數會指示 CHKDSK 常式,以略過特定 CHKDSK 否則採取驗證 NTFS 資料結構的完整性的動作。

如果您線上執行 CHKDSK,實際執行驗證的程式碼都位於公用程式 DLL,例如 Untfs.dll 而 Ufat.dll。驗證常式 CHKDSK 叫用 (Invoke) 都是相同時磁碟區必須經過驗證,才能執行透過 Windows 檔案總管] 或 [磁碟管理圖形使用者介面的常式。

但是,如果 CHKDSK 排定執行在電腦重新啟動時,二進位包含驗證程式碼的模組會是 Autochk.exe 原生 Windows 程式。因為 Autochk.exe 執行電腦的啟動程序在早期,Autochk.exe 中沒有的虛擬記憶體或其他 Win32 服務的好處。

Autochk.exe 會產生同樣的 Chkdsk.exe 公用程式 DLL 產生的文字輸出。Autochk.exe 啟動程序期間顯示此文字輸出,並且也會在應用程式事件記錄檔中記錄事件。記錄的事件資訊包括文字輸出如事件日誌資料緩衝區可以容納量。

因為 Autochk.exe 和驗證程式碼在 Chkdsk.exe 公用程式 DLL 根據相同的原始程式碼,本文的其餘部分會使用詞彙 CHKDSK 」 一般指 Autochk.exe 或 Chkdsk.exe。同樣地,因為這份文件是關於只牽涉到 NTFS 磁碟區的任何陳述式那些 CHKDSK 變更 「 並 CHKDSK 會 such-和-such"表示"並 CHKDSK 會 such-和-such 時在 NTFS 磁碟區上執行 CHKDSK"

請注意如果您使用 [/ C] 和 [/ I 參數它可能仍然已損毀甚至 CHKDSK 執行後的磁碟區。因此,建議您只有停機時間必須保持在最小值時,才使用這些參數。這些參數是的情況下,當您必須格外大型磁碟區上執行 CHKDSK,並需要彈性地管理發生的停機時間。

若要了解當它可能適合 使用/C和/I 參數,您必須一些內部 NTFS 資料結構的對有基本的了解,可以採取的損毀的種類,將放置的 CHKDSK 採用時它會驗證一磁碟區以及有潛在後果如果規避 CHKDSK 的常見的驗證步驟何種動作。

瞭解 CHKDSK 的功用

CHKDSK 的活動會分成三個主要的行程,期間 CHKDSK 會檢查該磁碟區上的所有中繼資料和選擇性的第四個階段。

中繼資料是 「 資料關於資料 」。中繼資料是檔案系統","所以到 speak 的負荷會持續追蹤的所有儲存在磁碟區的檔案的相關資訊。中繼資料包括配置單元將組成一個給定的檔案,何種配置單元都是免費的何種配置單位包含損毀磁區等等的資料的相關資訊。在另一方面,檔案包含的資料是稱為 「 使用者資料。NTFS 保護它的中繼資料透過交易記錄檔的使用。這種方式,不是被保護使用者資料。

階段 1: 正在檢查檔案

在其第一階段期間 CHKDSK 會顯示訊息,告訴您 CHKDSK 正在確認檔案,也會顯示驗證已完成的百分比從 0 開始計算 100%。此階段 CHKDSK 會檢查該磁碟區主檔案表格 (MFT) 中的每個檔案記錄區段。

MFT 中的特定檔案記錄區段可唯一識別每個檔案和目錄在 NTFS 磁碟區上。在 「 百分比完成 」 CHKDSK 顯示在這個階段是 MFT 該 CHKDSK 百分比已經驗證。在這個階段期間 CHKDSK 會檢查內部一致性每一檔案記錄區段,並建置一個代表檔案記錄區段中使用,而另一個代表使用中的磁碟區上叢集的兩個點陣圖。

這個階段結尾 CHKDSK 已經識別正在使用該空間和可 MFT 中以及在整個磁碟區上使用的空間。NTFS 會持續追蹤的點陣圖自己的儲存在磁碟的資訊。CHKDSK 比較其結果與 NTFS 會保留的點陣圖。如果是差異差異會記下 CHKDSK 輸出中。比方說如果已在使用一個檔案記錄區段找到損毀,已與該檔案記錄區段相關聯的磁碟叢集便標示為適用於 CHKDSK 點陣圖中但 NTFS 點陣圖中標示為"中使用"] 中。

階段 2: 檢查索引

在其第二次傳遞時 CHKDSK 會顯示一則訊息,告訴您 CHKDSK 驗證索引,並再次顯示完成,百分比為 100 百分比從 0 開始計算。此階段 CHKDSK 會檢查每個磁碟區上索引。

索引是基本上 NTFS 目錄。在 「 百分比完成 」 CHKDSK 顯示在這個階段是已被核取的磁碟區的目錄總數的百分比。在這個階段期間 CHKDSK 會檢查是在磁碟區的每個目錄的內部一致性檢查及驗證每個檔案和目錄由 MFT 中的檔案記錄區段由至少一個目錄所參考。CHKDSK 可確認每個檔案或目錄中參考的子目錄確實存在為 MFT 中一個有效的檔案記錄區段,而也會檢查的循環的目錄參考。最後,可確認 CHKDSK,時間戳記和檔案的檔案大小資訊是那些檔案的目錄清單中保持在最新狀態。

這個階段結尾 CHKDSK 完成了確認沒有孤兒 」 檔案,且所有的目錄清單是合法的檔案。是孤兒的檔案是一個檔案,其中沒有合法的檔案記錄區段但其中沒有任何目錄中的沒有清單。是孤兒的檔案通常可以還原到其適當的目錄如果該目錄仍然存在。如果適當的目錄不存在,CHKDSK 在根目錄中建立一個目錄,並將檔案放在那里。如果 CHKDSK 尋找目錄清單的檔案記錄區段已經不在使用中,或針對檔案記錄區段使用中時,但不對應到列在目錄的檔案,CHKDSK 只是移除目錄項目檔案記錄區段。

階段 3: 檢查安全性描述元

在其第三個階段期間 CHKDSK 會顯示訊息,告訴您 CHKDSK 驗證安全性描述元,第三次顯示 「 百分比完成,」 為 100 百分比從 0 開始計算。此階段 CHKDSK 會檢查每個檔案或磁碟區上的目錄相關聯的安全性描述元。

安全性描述元包含檔案或目錄有關檔案或目錄的 NTFS 權限,以及關於稽核的檔案或目錄擁有權的相關的資訊。在 「 百分比完成 」 CHKDSK 顯示在這個階段是磁碟區的檔案和目錄已被核取的百分比。CHKDSK 驗證每一個安全性描述元結構格式正確是內部一致。CHKDSK 不會驗證的使用者或群組所列出的實際存在或被授與權限的合適性。

階段 4: 檢查磁區

如果/R 參數作用中,CHKDSK 回合第四個傳遞到的磁碟區的可用空間的損壞磁區看起來。CHKDSK 會嘗試讀取以確認該磁扇區可在磁碟區上的每個磁區。即使 沒有/R] 切換 CHKDSK 永遠會讀取中繼資料相關聯的磁區。如果 指定/R 參數 CHKDSK 的早期階段讀取使用者資料相關聯的磁區。

當 CHKDSK 找到無法讀取的磁扇區時,NTFS 會加入包含該磁扇區至其清單壞叢集的叢集。如果壞的叢集正在使用中,CHKDSK 會配置新的叢集來執行不正確的叢集的工作。如果您使用的容錯磁碟,NTFS 復原損壞的叢集資料,並將資料寫入到新配置的叢集。否則,新叢集填入 0xFF 位元組的圖樣。

如果 NTFS 正常操作期間遇到無法讀取的磁扇區,NTFS 會 remaps 磁區執行 CHKDSK 時,它會以相同方式。因此,使用/R 參數通常是不重要。不過,使用/R 參數是方便的方法掃描整個磁碟區,如果您懷疑磁碟可能有損毀的磁區。

瞭解 CHKDSK 時間需求

執行 CHKDSK 的階段的前面的說明可讓您只有一個廣泛的外框以確認完整性的 NTFS 磁碟區執行 CHKDSK 最重要的工作。CHKDSK 也能讓許多其他的特定檢查在每一個傳遞,並傳遞之間的幾項快速檢查。不過,甚至這類一個廣泛大綱提供下列討論的變數會影響量和新 /C/C與/I 可用參數的 Windows XP 中的影響 CHKDSK 執行所需時間的某些基礎。

變數 1: 「 索引 」 階段

在執行 CHKDSK (檢查檔案和檢查安全性描述元) 的 「 第一和第三個階段,百分比完成 」 指示器的進度是相當平順。未使用的檔案記錄區段並需要較少時間來處理,並大的安全性描述元做採取更多的時間處理程序,但整體 「 百分比完成 」 是相當準確反映的實際在階段需要的時間。

不過,此百分比/時間關聯性不一定適用於第二個階段時 CHKDSK 會檢查索引 (NTFS 目錄)。它所需的檔案和子目錄中該目錄但"百分比完成 」 在這個階段的數目與密切相關目錄的處理序的時間是只根據 CHKDSK 必須檢查的目錄的數目。沒有未調整的可能需的時間,例如處理非常大量的檔案及子目錄的目錄。除非在所有的磁碟區目錄包含關於相同數目的檔案,在 「 百分比完成 」 顯示在這期間階段不會可靠地反映實際第二個階段需要的時間。

如果您攔截一個未預期的 CHKDSK 程序的中間,更糟的是讓事情,CHKDSK 的第二個階段會是一個通常可以讓最長進入執行。

變數 2: 情況的磁碟區

考量狀態的磁碟區播放的許多因素多久 CHKDSK] 中的角色會執行。公式為預測所需在指定的磁碟區上執行 CHKDSK 時間就必須在一般包括檔案和目錄的數量、 磁碟區分散程度為這類變數及的 MFT 在特別格式的檔案名稱 (長名稱、 8.3 格式名稱或混合) 與實際的損害數量該 CHKDSK 必須修復。

變數 3: 硬體問題

硬體問題也會影響多久才執行 CHKDSK。該變數包含可用記憶體、 CPU 速度、 磁碟速度等的量。

變數 4: CHKDSK 設定

如果您不 使用/R 參數,最大時間考量在給定的硬體平台上是檔案和目錄,也在磁碟區上的數目,而不是絕對磁碟區的大小。

比方說不加 上/R] 參數 50 十億位元組 (GB) 磁碟區具有只有一或兩個大型的資料庫檔案可能要花只秒鐘 CHKDSK 來執行。如果您 使用/R 參數,CHKDSK 必須讀取並確認每個磁扇區在磁碟區所需之大型磁碟區的時間大幅增加。在另一方面,在甚至相對較小的磁碟區執行 CHKDSK 可能需要小時如果磁碟區有數百個千分位或甚至數以百萬計的小檔案--不論是否指定 /R/R 切換。

預測 CHKDSK 時間需求

您可以看到執行 CHKDSK 可以需要數秒到根據特定情況的幾天。最好的方式預測 CHKDSK 多久會發生在指定的磁碟區上執行是實際執行僅讀取模式中的試用版執行期間內低系統使用量。

但是,您必須非常小心使用這項技術基於下列原因:
  • 在僅讀取模式,CHKDSK 結束之前完成所有的三個階段如果早期階段中遇到錯誤,且 CHKDSK 容易發生錯誤地報告錯誤。比方說 CHKDSK 可能會報告磁碟損毀,如果 NTFS 剛好修改的磁碟區域,雖然 CHKDSK 正在檢查磁碟。正確的確認磁碟區必須是靜態,且唯一的方法,以保證靜態狀態是鎖定磁碟區]。CHKDSK 鎖定磁碟區,只有您 指定/F 參數 (或/R 切換控制 暗示/F)。您可能需要不止一次執行 CHKDSK,以取得完成唯讀模式它會傳遞所有 CHKDSK。
  • CHKDSK 是這兩個 CPU 及磁碟密集。多少負載是在系統和 CHKDSK 執行線上或 Windows XP 啟動順序設定期間受到執行 CHKDSK 所花的時間。哪些因素會變成瓶頸取決於硬體組態但高 CPU 使用率或繁忙磁碟 I/O 僅讀取模式中執行 CHKDSK 時將會增加 CHKDSK 執行時間。而且,Autochk.exe 會從所 Chkdsk.exe 不同的環境中執行。透過 Autochk.exe 執行 CHKDSK 提供 CHKDSK 獨佔使用的 CPU 和 I/O 資源,但它也可以防止 CHKDSK 使用虛擬記憶體。雖然您可能會預期執行速度比 Chkdsk.exe Autochk.exe,Autochk.exe 實際上花去較長的時間如果電腦具有相對較小的可用 RAM。
  • 修復損毀新增到所需的時間。在唯讀模式是 CHKDSK 執行到完成才 CHKDSK 未發現任何重大的損毀。如果磁碟顯示次要損毀,您可以預測修正此問題不會將加入為只是要執行 CHKDSK 所需的時間太多。但如果 CHKDSK 找到主要傷害,例如從嚴重的硬體失敗您可以預測,執行 CHKDSK 所需的時間將會增加到損毀 CHKDSK 必須修復的檔案數目等比例。在極端情況下,這可以個以上的雙倍時間所花的執行 CHKDSK 執行。

引入/C] 和 [/ I 參數

/ C 參數

/ C 參數會指示 CHKDSK 略過偵測循環目錄結構中的檢查。循環是非常少見的形式的損毀在其中一個子目錄本身對有 「 祖系 」。

使用/C 參數可以加速 CHKDSK 約 1 到 2 百分之但使用這個參數可以也保留目錄 「 迴圈 」 在 NTFS 磁碟區上。這類迴圈可能無法從其他樹狀目錄的存取,而某些檔案可能孤立在 Win32 程式包括備份程式不能看到檔案的意義。

/ I 切換控制

/ I 參數會指示 CHKDSK 略過檢查比較其相對應的檔案記錄區段的目錄項目。與此參數作用中的目錄項目仍然檢查內部一致性,但是目錄項目並非一定是與儲存在對應的檔案記錄區段中的資料一致。

您會藉由 使用/I 參數節省多少時間很難預測。通常 ,/I 切換控制會降低 CHKDSK 時間 50 到 70 百分之目錄的檔案的比率和相對於 CPU 速度的磁碟 I/O 速度等因素而定。

使用/I 參數具有這些限制:
  • 您可能會有參照不正確的檔案記錄區段的目錄項目。在這種情況下任何程式嘗試要使用這種項目將會發生錯誤。
  • 您可能沒有目錄項目參考 (孤兒的檔案,就發生的另一個方法) 的檔案記錄區段。實際上不變的檔案如檔案記錄區段所代表可能看不到所有的 Win32 程式包括備份程式。

/ C] 和 [/ I 參數的值

磁碟損毀偵測到在磁碟區時, 有三個基本選項可用來回應。

第一個選項是不採取任何動作。任務關鍵伺服器應該是必要性的線上一天 24 小時上, 這通常是必要性的選擇。缺點是相對較小的損毀可以 snowball 到主要的損毀。只有保持伺服器連線是保護儲存在損毀的磁碟區的資料的完整性比更重要,因此,考慮這個選項。損毀的磁碟區上的所有資料應都視為 「 危險 」,直到您執行 CHKDSK。 第二個選項是執行一個完整的 CHKDSK 操作修復所有的檔案系統資料,並還原所有可以復原的自動化程序的使用者資料。不過,執行完整的 CHKDSK 作業可以花費數小時的任務關鍵伺服器的停機時間次 inopportune。 第三個選項是使用其中一個執行縮寫的 CHKDSK 操作或 同時/C和/I 的切換,以修復成更大的問題可以 snowball 的損毀的種類,很少時間比完整 CHKDSK 需要。

不過請注意執行縮寫的 CHKDSK 不會修復所有損毀可能存在。您仍然需要保證可復原的所有資料實際上已經都修復某些未來次時,執行完整 CHKDSK。

同時也請注意 NTFS 並不保證使用者資料的完整性磁碟損毀的例項之後即使您立即執行完整的 CHKDSK 作業。可能有檔案無法復原 CHKDSK,而且 CHKDSK 不會復原的檔案可能仍然會在內部毀損。它仍然非常重要您保護重要的資料,藉由執行定期備份,或以使用其他強大的資料修復方法。
checkdisk 循環循環執行

警告:本文為自動翻譯

內容

文章識別碼:314835 - 最後檢閱時間:12/07/2015 08:25:12 - 修訂: 4.4

Microsoft Windows XP Home Edition (家用版), Microsoft Windows XP Professional, Microsoft Windows XP Professional x64 Edition

  • kbnosurvey kbarchive kbmt kbfea kbinfo KB314835 KbMtzh
意見反應