คำอธิบายเกี่ยวกับ CHKDSK และสวิตช์ /C และ /I ที่ใหม่

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 187941 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
หากต้องการดูบทความนี้สำหรับรุ่น Microsoft Windows XP โปรดดูที่314835.
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

สรุป

ใน Windows NT รุ่น 4.0 4 ชุดบริการ (SP4) และ Windows 2000 เพิ่มสวิตช์ใหม่ที่สองกับ Chkdsk.exe สวิตช์เหล่านี้ช่วยให้ผู้ใช้จัดการ downtime ที่ใช้ โดยการเรียกใช้ CHKDSK หรือ AUTOCHK ดียิ่ง ขึ้น

สวิตช์ที่เพิ่มเข้าไปใน Windows NT 4.0 SP4 และ Windows 2000 จะ /C และ / ฉัน และไม่ถูกต้องเท่านั้นเมื่อไดรฟ์ปลายทางมี NTFS จัดรูปแบบ เป็นการชักสวิตช์แต่ละจูงชุดคำสั่ง CHKDSK เพื่อข้ามการดำเนินการบางอย่างได้มิฉะนั้นจะใช้เพื่อตรวจสอบความสมบูรณ์ของโครงสร้างข้อมูลของระบบไฟล์ NTFS

คำเตือนMicrosoft แนะไม่นำ interrupting กระบวนการ CHKDSK เมื่อมีใช้ ด้วยสวิตช์ /f และ Microsoft ไม่รับประกันความถูกต้องของดิสก์ถ้ามีการขัดจังหวะ CHKDSK โปรแกรม

ข้อมูลเพิ่มเติม

chkdsk.exe คือ อินเตอร์เฟซ command-line สำหรับโปรแกรมที่สามารถตรวจสอบความถูกต้องทางตรรกะของระบบแฟ้มใน Windows เมื่อ CHKDSK พบไม่สอดคล้องกันลอจิคัลที่ใช้การดำเนินการซ่อมแซมข้อมูลของระบบไฟล์ มาดังกล่าวไม่ได้อยู่ในโหมดอ่านอย่างเดียว

รหัสที่ทำการตรวจสอบที่แท้จริงแล้ว เมื่อ CHKDSK รันออนไลน์ อยู่ในยูทิลิตี้ DLLs เช่น Untfs.dll และ Ufat.dll ตามปกติการตรวจสอบที่เรียก โดย Chkdsk.exe เป็นตัวเหมือนกันที่เรียกใช้เมื่อมีการตรวจสอบไดรฟ์ข้อมูลผ่านทางอินเทอร์เฟซสำหรับผู้ใช้แบบกราฟิกโดย Windows Explorer หรือผู้ดูแลระบบของดิสก์ เมื่อมีการกำหนดเวลา CHKDSK จะรันเมื่อเริ่มระบบใหม่ ที่อีกครอง โมดูลไบนารีที่ประกอบด้วยรหัสการตรวจสอบได้ Autochk.exe autochk.exe เป็นโปรแกรมประยุกต์ Windows แบบดั้งเดิมที่รันในลำดับการเริ่มระบบระบบที่ไม่มีประโยชน์ของหน่วยความจำเสมือนหรือบริการอื่น ๆ Win32 ก่อนหน้าเพียงพอ autochk.exe สร้างชนิดของการออกแบบที่มีโปรแกรมอรรถประโยชน์ DLLs ที่เรียก โดย Chkdsk.exe เดียวกัน แต่นอกเหนือจากการแสดงนี้แสดงผลบนหน้าจอในระหว่างกระบวนการเริ่มระบบ Autochk.exe ยังล็อกเหตุการณ์ไปยังแอพลิเคชันล็อกเหตุการณ์สำหรับระบบประกอบด้วยมากของผลลัพธ์แบบตามที่สามารถบันทึกลงในบัฟเฟอร์ข้อมูลของแฟ้มบันทึกเหตุการณ์

เนื่องจาก Autochk.exe และรหัสการตรวจสอบใน DLLs อรรถประโยชน์ที่ใช้ โดย Chkdsk.exe ขึ้นโค้ดต้นฉบับเดียวกัน ทั้งสองอย่างจะถูกเรียก generically ว่า "CHKDSK" ทั่วทั้งส่วนเหลือของบทความนี้ likewise ตามบทความนี้เกี่ยวข้องกับการเปลี่ยนแปลงในลักษณะการทำงาน CHKDSK แจ้งกับไดรฟ์ข้อมูล NTFS เท่านั้น มันควรจะเข้าใจว่า โดย saying, "CHKDSK ไม่ such- และ-such ต่อไปนี้คือ meant: "CHKDSK ไม่ such- และ-such เมื่อรันในวอลุ่ม NTFS"

เนื่องจากการใช้สวิตช์ /C และ /I อาจส่งผลในไดรฟ์ข้อมูลที่เสียหายเหลือแม้หลังจากที่เสร็จสมบูรณ์ CHKDSK การใช้สวิตช์เหล่านี้ไม่แนะนำยกเว้นในกรณีที่ระบบ downtime ต้องถูกเก็บไว้ให้น้อยสุด สวิตช์เหล่านี้มีวัตถุประสงค์ที่จะใช้ โดยผู้ใช้ที่มีไดรฟ์ข้อมูลขนาดใหญ่ exceptionally และที่จำเป็นต้องมีความยืดหยุ่นในการจัดการ downtime ที่ถูกใช้เมื่อคุณต้องมีการเรียกใช้ CHKDSK บนไดรฟ์ข้อมูลเช่น

การทำความเข้าใจเมื่อมันอาจจะเหมาะสมกับใช้สวิตช์เหล่านี้ คุณจำเป็นต้องมีการทำความเข้าใจพื้นฐานของโครงแบบภายในระบบไฟล์ NTFS สร้างข้อมูล ชนิดของความเสียหายที่สามารถดำเนินการ การดำเนินการใด CHKDSK ปฏิบัติเมื่อมีการตรวจสอบไดรฟ์ข้อมูล และผลลัพธ์ที่อาจเกิดขึ้นได้ใน circumventing ขั้นตอนการตรวจสอบปกติของ CHKDSK บางอย่าง

กิจกรรมของ chkdsk ถูกแบ่งออกเป็นสามหลัก "ระยะ" ซึ่งจะตรวจสอบข้อมูลทั้งหมด "metadata" บนไดรฟ์ข้อมูลและมีระยะที่สี่ที่ไม่จำเป็น ข้อมูลเมตาคือ "การข้อมูลเกี่ยวกับข้อมูล" ค่าแฟ้มระบบผลิต ดังนั้น speak ไป ที่ใช้ในการติดตามทุกสิ่งทุกอย่างที่เกี่ยวกับแฟ้มบนไดรฟ์ข้อมูลทั้งหมด ได้ ข้อมูลเมตาบอกหน่วยการจัดสรรให้หาข้อมูลสำหรับการกำหนดแฟ้ม หน่วยการจัดสรรใดจะว่าง ปันส่วนใดหน่วยประกอบด้วยเซกเตอร์เสีย และอื่น ๆ "เนื้อหา" ของไฟล์ ที่อีกครอง คือ termed "ข้อมูลผู้ใช้ ระบบไฟล์ ntfs ปกป้องข้อมูลเมตาของโดยใช้การล็อกของธุรกรรม ข้อมูลผู้ใช้ไม่จึงได้รับ

ในระหว่างระยะของแรก CHKDSK แสดงข้อความบนหน้าจอพูดว่า จะไม่ตรวจสอบแฟ้มและจำนวนครั้งตั้งแต่ 0 ถึง 100 เปอร์เซ็นต์ที่เสร็จสมบูรณ์ ตรวจระหว่างขั้นตอนนี้ CHKDSK สอบแต่ละเซ็กเมนต์บันทึกแฟ้ม (FRS) ในตารางแฟ้มต้นแบบของไดรฟ์ (MFT) ทุกแฟ้มและไดเรกทอรีบนไดรฟ์ข้อมูล NTFS เฉพาะจอ FRS ที่เฉพาะเจาะจงในการ MFT และเปอร์เซ็นต์เสร็จสมบูรณ์ในการแสดง CHKDSK ระหว่างขั้นตอนนี้มีเปอร์เซ็นต์ของ MFT ที่ได้รับการตรวจสอบ During this stage, CHKDSK examines each FRS for internal consistency and builds two bitmaps, one representing what FRSs are in use, and the other representing what clusters on the volume are in use. At the end of this phase, CHKDSK knows what space is in use and what space is available both within the MFT and on the volume as a whole. NTFS keeps track of this information in bitmaps of its own that are stored on the disk allowing CHKDSK to compare its results with NTFS's stored bitmaps. If there are discrepancies, they are noted in CHKDSK's output. For example, if an FRS that had been in use is found to be corrupted, the disk clusters formerly associated with that FRS will end up being marked as available in CHKDSK's bitmap, but will be marked as being "in use" according to NTFS's bitmap.

During its second stage, CHKDSK displays a message on the screen saying that it is verifying indexes and counts from 0 to 100 percent complete a second time. During this phase, CHKDSK examines each of the indexes on the volume. Indexes are essentially NTFS directories and the percent complete that CHKDSK displays during this phase is the percent of the total number of directories on the volume that have to be checked. During this stage, CHKDSK examines each directory on the volume for internal consistency and also verifies that every file and directory represented by an FRS in the MFT is referenced by at least one directory. It also confirms that every file or subdirectory referenced in each directory actually exists as a valid FRS in the MFT and checks for circular directory references. Finally, it confirms that the various time stamps and file size information associated with files are all up-to-date in the directory listings for those files. At the end of this phase, CHKDSK has ensured that there are no "orphaned" files and that all the directory listings are for legitimate files. An orphaned file is one for which a legitimate FRS exists, but which is not listed in any directory. When an orphaned file is found, it can often be restored to its rightful directory, provided that directory is still around. If the directory that should hold the file no longer exists, CHKDSK will create a directory in the root directory and place the file there. If directory listings are found that reference FRSs that are no longer in use or that are in use but do not correspond to the file listed in the directory, the directory entry is simply removed.

During its third stage, CHKDSK displays a message on the screen saying that it is verifying security descriptors and counts from 0 to 100 percent complete a third time. During this phase, CHKDSK examines each of the security descriptors associated with each of the files and directories on the volume. Security descriptors contain information regarding the owner of the file or directory, NTFS permission for the file or directory, and auditing information for the file or directory. The percent complete in this case is the percent of the number of files and directories on the volume. CHKDSK verifies that each security descriptor structure is well formed and internally consistent. It does not verify that the listed users or groups actually exist or that the permissions granted are in any way appropriate.

The fourth stage of CHKDSK is only invoked if the /R switch is used. /R is used to locate bad sectors in the volume's free space. When /R is used, CHKDSK attempts to read every sector on the volume to confirm that the sector is usable. Sectors associated with metadata are read during the natural course of running CHKDSK even when /R is not used. Sectors associated with user data are read during earlier phases of CHKDSK provided /R is specified. When an unreadable sector is located, NTFS will add the cluster containing that sector to its list of bad clusters and, if the cluster was in use, allocate a new cluster to do the job of the old. If a fault tolerant disk driver is being used, data is recovered and written to the newly allocated cluster. Otherwise, the new cluster is filled with a pattern of 0xFF bytes. When NTFS encounters unreadable sectors during the course of normal operation, it will also remap them in the same way. Thus, the /R switch is usually not essential, but it can be used as a convenient mechanism for scanning the entire volume if a disk is suspected of having bad sectors.

The preceding paragraphs give only the broadest outline of what CHKDSK is actually doing to verify the integrity of an NTFS volume. There are many specific checks made during each stage and several quick checks between stages that have not been mentioned. Instead, this is simply an outline to the more important facets of CHKDSK activity as a basis for the following discussion regarding the time required to run CHKDSK and the impact of the new switches provided in SP4.

ในระหว่างการแรก และสามระยะของ CHKDSK เปอร์เซ็นต์สมบูรณ์ก้าวตัวบ่งชี้ที่ค่อนข้างอย่าง ไม่สามารถ unevenness บางอย่างในอัตราละใดเหล่านี้ phases ความคืบหน้าได้ FRSs ที่ใช้ไม่จำเป็นต้องใช้เวลาน้อยกว่าที่ทำงานที่ใช้งานในการประมวลผล ตัวบอกความปลอดภัยที่มีขนาดใหญ่ใช้เวลาเพิ่มเติมที่จะดำเนินการจากดำเนินการมีขนาดเล็ก และอื่น ๆ แต่ overall เปอร์เซ็นต์เสร็จสมบูรณ์ปรากฏ fairly มีความถูกต้องที่แสดงในเวลาแท้จริงที่จำเป็นสำหรับระยะนั้น

เดียวกันไม่จำเป็นต้องเป็นจริงสำหรับขั้นตอนที่สองของ CHKDSK จำนวนเวลาที่จำเป็นในการประมวลผลไดเรกทอรีกขนาดถูกยึดกับจำนวนของแฟ้มหรือไดเรกทอรีย่อยที่แสดงอยู่ในไดเรกทอรีนั้น แต่เปอร์เซ็นต์เสร็จสมบูรณ์อยู่ระหว่างขั้นตอนนี้มีเปอร์เซ็นต์ของจำนวนที่ใช้ในการไดเรกทอรีไปเป็น examined โดยไม่เกี่ยวกับสำหรับข้อเท็จจริงที่ไดเรกทอรีบางอย่างอาจใช้เวลานานกว่าจากบุคคลอื่นสามารถประมวลผล ตัวอย่างเช่น บนไดรฟ์ข้อมูลแบบไดเรกทอรีที่ขนาดเล็กจำนวนมากและหนึ่งที่มีขนาดใหญ่มากหนึ่ง เปอร์เซ็นต์เสร็จสมบูรณ์อาจความคืบหน้า rapidly ตั้งแต่ 0 ถึง 10 เปอร์เซ็นต์ที่เสร็จสมบูรณ์ และปรากฏขึ้นเพื่อที่ได้รับการติดสำหรับรอบระยะเวลาความยาวของเวลาก่อน rapidly progressing จาก 10 ถึง 100 เปอร์เซ็นต์ที่เสร็จสมบูรณ์ ดังนั้น เว้นแต่ว่าคุณทราบว่าตัวอย่างบางอย่างที่ไดเรกทอรีบนไดรฟ์ข้อมูลแบบสม่ำเสมอขอแจ้งกับจำนวนแฟ้มที่ประกอบด้วย แสดง "เปอร์เซ็นต์เสร็จสมบูรณ์" ในระหว่าง ขั้นตอนนี้ไม่สามารถจะถือว่าเชื่อถือได้ที่แสดงในเวลาจริงที่เหลืออยู่สำหรับขั้นตอนนี้

ทำ matters worse สำหรับทุกคนที่พบในระหว่างการ CHKDSK ไม่คาดคิด ขั้นตอนที่สองของ CHKDSK อยู่ใช้โดยทั่วไปที่สุดในการเรียกใช้

โดยในขณะนี้ มันควรยกเลิกการเลือกหลายปัจจัยที่จำเป็นต้อง มีสถานะของไดรฟ์ข้อมูลแบบเล่นแบบโรในระยะเวลา CHKDSK จะมีการเรียกใช้ สูตรการ predict เวลาจำเป็นต้องเรียกใช้ CHKDSK บนไดรฟ์ข้อมูลที่กำหนดจะมีการนำเข้าบัญชีเช่นปัจจัยเป็นหมายเลขของไฟล์ และไดเรกทอรี ระดับการกระจายตัวของไดรฟ์ข้อมูลโดยทั่วไปเช่นเป็นของตารางแฟ้มต้นแบบเฉพาะ ว่าแฟ้มมีทั้งสองชื่อมีความยาว และ 8.3 จัดรูปแบบชื่อ และความเสียหายของจำนวนจริงจำเป็นต้องสามารถแก้ไข และมีการพูดว่า ปัญหาฮาร์ดแวร์เช่นจำนวนของหน่วยความจำระบบ ความเร็วของ CPU ความเร็วของดิสก์หรือดิสก์ ไม่มีสิ่งใด และอื่น ๆ

แทนที่ความพยายามที่ทำให้ระยะ predict CHKDSK จะใช้เพื่อเรียกใช้'สำหรับไดรฟ์ข้อมูลที่กำหนดบนแพลตฟอร์มฮาร์ดแวร์ที่กำหนดเป็น suffice เพื่อบอกว่า มันสามารถนำที่ใดก็ได้จากสักครู่ไปอีกหลายวัน--ทั้งนี้ขึ้นอยู่กับสถานการณ์ของคุณระบุ ถ้ามีใช้ /R สำหรับแพลตฟอร์มแบบฮาร์ดแวร์ที่กำหนด เกี่ยวกับทุกคือ หมายเลขของไฟล์ และไดเรกทอรีเกินกว่าขนาดที่แน่นอนของไดรฟ์ข้อมูล นั่นคือ 50 GB ไดรฟ์ข้อมูล ด้วยแฟ้มฐานข้อมูลขนาดใหญ่หนึ่ง หรือสองจะเท่านั้นมีวินาทีสำหรับ CHKDSK ให้ทำงาน โดยไม่มีระบุ /R ถ้ามีระบุ /R, CHKDSK จะต้องอ่านเซกเตอร์ทั้งหมดบนไดรฟ์ข้อมูลการตรวจสอบ และที่ชัดเจนเพิ่มมากสำหรับไดรฟ์ข้อมูลขนาดใหญ่ ที่อื่นครอง แม้แต่ไดรฟ์ข้อมูลแบบค่อนข้างเล็กอาจใช้เวลาเพื่อเรียกใช้ CHKDSK ถ้ามีเป็นร้อย ๆ รายการหลักพันหรือล้านแฟ้มขนาดเล็ก--หรือไม่มีระบุ /R

วิธีที่ดีที่สุดกับ predict จะ CHKDSK นาน take ให้เรียกใช้บนไดรฟ์ข้อมูลที่กำหนดเป็นจริง ๆ แล้ว ทำการเรียกใช้ทดลองในโหมดอ่านอย่างเดียวในระหว่างรอบระยะเวลาของการใช้งานระบบต่ำ ระมัดต้องดำเนินการใช้เทคนิคนี้ อย่างไรก็ตาม เหตุผลสาม:
  • Read-only CHKDSK will abort before it completes all three phases if it encounters errors in earlier phases and is prone to falsely reporting errors when in read-only mode. That is, CHKDSK may report that a disk is corrupted even when there is no real corruption present. This can happen if NTFS happens to modify areas of the disk on behalf of some program activity that CHKDSK is examining at the same time. To verify a volume correctly, the volume must be in a static state, and the only way to guarantee that state is to lock the volume. CHKDSK only locks the volume when /F or /R (which implies "F") is specified. Thus, you may need to run CHKDSK more than once to get it to complete all stages in read-only mode.
  • System load and whether CHKDSK is running online or during the Windows NT boot sequence can impact the time required to run CHKDSK. CHKDSK is both CPU and disk intensive. Which factor becomes the bottleneck will depend on the specific hardware scenario, but, if heavy disk I/O or high CPU usage is going on concurrent with a read-only CHKDSK, inflated times will result. Also, Autochk.exe runs in a different environment than Chkdsk.exe. While running CHKDSK through Autochk.exe affords exclusive use of CPU and I/O resources to CHKDSK, it also deprives CHKDSK of the benefit of virtual memory. Thus, while Autochk.exe would usually be expected to run faster than Chkdsk.exe, systems with relatively low amounts of RAM may see longer times for Autochk.exe than for Chkdsk.EXE.
  • Fixing corruption adds to the time required. A read-only CHKDSK can complete only if no significant corruption is found. If a disk suffers only minor corruption, the time to fix the problems will be only slightly longer than that required for read-only CHKDSK. But if there is major damage, as might result from a serious head-crash or other major hardware failure, the time required to run CHKDSK can increase in proportion to the number of files damaged. In extreme cases, this could more than double the time required for CHKDSK.

Introducing the /C and /I Switches

The /C switch directs CHKDSK to skip the checks that detect cycles in the directory structure. Cycles are a very rare form of corruption in which a subdirectory has itself for an ancestor. Using the /C switch can speed CHKDSK by about 1 to 2 percent. Using /C can also leave directory "loops" on an NTFS volume. Such loops may be inaccessible from the rest of the directory tree and could result in some number of files being orphaned in the sense that they cannot be seen by any Win32 applications -- including backup applications.

The /I switch directs CHKDSK to skip checks that compare directory entries to the FRSs that correspond to those entries. Thus, while the directory entries are still checked to be sure that they are self-consistent, they are not necessarily consistent with the data stored in their corresponding FRSs even after CHKDSK has run with this switch in effect. Using the /I switch typically results in CHKDSK times being reduced by 50 to 70 percent. Exactly how much faster CHKDSK is with this switch will depend on factors such as the ratio of files to directories, as well as on the relative speed of disk I/O versus CPU speed, and is, therefore, difficult to predict in advance. The use of the /I switch can result in directory entries remaining that refer to incorrect FRSs or in FRSs remaining that are not referenced by any directory entry. The later case is another form of orphaning. The file represented by the FRS may be intact in all ways except for the fact that it is invisible to all Win32 applications-including backup applications. In the former case, files may appear to exist; yet applications encounter errors when attempting to access them.

When disk corruption is detected on a volume, you have three basic choices

  • Do nothing. For a mission critical server that is expected to be online 24 hours a day, this is often the choice of necessity. The drawback to this option is that relatively minor corruption can "snowball" into major corruption if it is not repaired as soon as possible after it is detected. Therefore, this option should only be considered when keeping a system up is more important that the integrity of the data stored on the corrupted volume because all data on the corrupted volume should be considered "at risk" until CHKDSK is run.
  • Run a full CHKDSK. This option repairs all file system data, restoring all user data that can be recovered by means of an automated process. The drawback to this option is that a full CHKDSK can require several hours of downtime for a mission critical server at an inopportune time.
  • Run an abbreviated CHKDSK using some combination of the /C and /I switches. This option repairs the kinds of corruption that can "snowball" into bigger problems in much less time than a full CHKDSK would require, but does not repair all the corruption that might exist. A full CHKDSK will still be required at some future time to guarantee that all the data that can be recovered has been recovered.
It should be pointed out that NTFS does not guarantee the integrity of user data following an instance of disk corruption -- even when a full CHKDSK is run immediately after corruption has been detected. Thus, there may be files that CHKDSK cannot recover. Also, files that are recovered may be internally corrupted even after CHKDSK has been run. It, therefore, remains vitally important that mission critical data be protected by means of a regimen of periodic backups or other robust disaster recovery methodology.

คุณสมบัติ

หมายเลขบทความ (Article ID): 187941 - รีวิวครั้งสุดท้าย: 7 มกราคม 2554 - Revision: 3.0
ใช้กับ
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
Keywords: 
kbfea kbfix kbinfo kbmt KB187941 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:187941

ให้ข้อเสนอแนะ

 

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