คำอธิบายเกี่ยวกับพารามิเตอร์ใหม่ /C และ /I ที่ใช้ได้กับ Chkdsk.exe

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

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

สรุป

บทความนี้อธิบายสวิตช์ใหม่สอง/cสลับและ/iสวิตช์ ที่รวมอยู่ในโปรแกรม CHKDSK ใน Windows XP สวิตช์เหล่านี้เปิดใช้งานการจัดการที่ดียิ่งขึ้นของ downtime ที่เกิดขึ้นเมื่อคุณเรียกใช้ CHKDSK หรือ AUTOCHK

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

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

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

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

หากคุณรัน CHKDSK แบบออนไลน์ รหัสที่แท้จริงแล้ว ทำการตรวจสอบที่อยู่ในยูทิลิตี้ DLLs ตัวอย่างเช่น Untfs.dll และ Ufat.dll ตามปกติตรวจสอบที่ CHKDSK invokes ได้ตามปกติเหมือนกันที่รันเมื่อมีการตรวจสอบไดรฟ์ข้อมูลผ่านส่วนติดต่อผู้ใช้ที่เป็นรูปภาพของ Windows Explorer หรือการจัดการดิสก์

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

autochk.exe สร้างชนิดเดียวกันของข้อความขาออกที่สร้าง DLLs ของโปรแกรมอรรถประโยชน์ Chkdsk.exe autochk.exe แสดงผลลัพธ์ของข้อความนี้ในระหว่างกระบวนการเริ่มต้น และยัง ล็อกเหตุการณ์ในแฟ้มบันทึกเหตุการณ์ของโปรแกรมประยุกต์ รายละเอียดของเหตุการณ์ที่บันทึกล็อกที่รวมเป็นมากของการแสดงผลข้อความตามที่สามารถบันทึกลงในบัฟเฟอร์ข้อมูลของแฟ้มบันทึกเหตุการณ์

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

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

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

การทำความเข้าใจเกี่ยวกับการ CHKDSK ทำอะไร

กิจกรรมของ chkdsk แบ่งออกเป็นผ่านสามหลักไป เวลา CHKDSK ตรวจสอบข้อมูลเมตาทั้งหมดบนไดรฟ์ข้อมูล และรหัสผ่านที่สี่ไม่จำเป็น

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

ขั้นตอนที่ 1: แฟ้มการตรวจสอบ

ในระหว่างการรหัสผ่านของแรก CHKDSK แสดงข้อความที่บอกให้คุณทราบว่า กำลังตรวจสอบแฟ้ม CHKDSK และยัง แสดงเปอร์เซ็นต์ของการตรวจสอบเสร็จสมบูรณ์ การตรวจนับตั้งแต่ 0 ถึง 100 เปอร์เซ็นต์ ระหว่างขั้นตอนนี้ CHKDSK ตรวจสอบแต่ละเซ็กเมนต์ที่บันทึกแฟ้มในตารางแฟ้มต้นแบบของไดรฟ์ (MFT)

เซ็กเมนต์ที่บันทึกแฟ้มที่ระบุใน MFT ไฟล์และไดเรกทอรีบนไดรฟ์ข้อมูล NTFS ทั้งหมดที่ระบุโดยเฉพาะ "เปอร์เซ็นต์สมบูรณ์" ที่ CHKDSK แสดงขึ้นในระหว่างขั้นตอนนี้จะมีการตรวจสอบเปอร์เซ็นต์ของ MFT CHKDSK นั้น ในระหว่างรอบนี้ CHKDSK ตรวจสอบแต่ละเซ็กเมนต์ที่บันทึกแฟ้มสำหรับความสอดคล้องภายใน และสร้างบิตสองแมป หนึ่งแทนส่วนที่บันทึกในแฟ้มที่อยู่ในการใช้และอื่น ๆ แทน clusters บนไดรฟ์ข้อมูลที่ใช้

At the end of this phase, CHKDSK has identified the space that is in use and the space that is available, both within the MFT and on the volume as a whole. NTFS keeps track of this information in bitmaps of its own, which are stored on the disk. CHKDSK compares its results with the bitmaps that NTFS keeps. If there are discrepancies, the discrepancies are noted in the CHKDSK output. For example, if a file record segment that was in use is found to be corrupted, the disk clusters that were associated with that file record segment are marked as "available" in the CHKDSK bitmap but are marked as "in use" in the NTFS bitmap.

Phase 2: Checking indexes

During its second pass, CHKDSK displays a message that tells you that CHKDSK is verifying indexes and again displays the percent completed, counting from 0 to 100 percent. During this phase, CHKDSK examines each of the indexes on the volume.

Indexes are essentially NTFS directories. The "percent completed" that CHKDSK displays during this phase is the percentage of the total number of the volume's directories that have been checked. During this pass, CHKDSK examines each directory that is on the volume, checking for internal consistency and verifying that every file and directory that is represented by a file record segment in the MFT is referenced by at least one directory. CHKDSK confirms that every file or subdirectory that is referenced in a directory actually exists as a valid file record segment in the MFT and also checks for circular directory references. Finally, CHKDSK confirms that the time stamps and file size information for the files are up-to-date in the directory listings for those files.

At the end of this phase, CHKDSK has made sure that there are no "orphaned" files and that all directory listings are for legitimate files. An orphaned file is a file for which there is a legitimate file record segment but for which there is no listing in any directory. An orphaned file often can be restored to its proper directory if that directory still exists. If the proper directory no longer exists, CHKDSK creates a directory in the root directory and places the file there. If CHKDSK finds directory listings for file record segments that are no longer in use, or for file record segments that are in use but that do not correspond to the file that is listed in the directory, CHKDSK simply removes the directory entry for the file record segment.

Phase 3: Checking security descriptors

During its third pass, CHKDSK displays a message that tells you that CHKDSK is verifying security descriptors and, for the third time, displays "percent completed," counting from 0 to 100 percent. During this phase, CHKDSK examines each security descriptor that is associated with files or directories that are on the volume.

Security descriptors contain information about ownership of a file or directory, about NTFS permissions for the file or directory, and about auditing for the file or directory. The "percent completed" that CHKDSK displays during this phase is the percentage of the volume's files and directories that have been checked. CHKDSK verifies that each security descriptor structure is well formed and is internally consistent. CHKDSK does not verify the actual existence of the users or groups that are listed or the appropriateness of the permissions that are granted.

Phase 4: Checking sectors

ถ้าการ/Rswitch is in effect, CHKDSK runs a fourth pass to look for bad sectors in the volume's free space. CHKDSK attempts to read every sector on the volume to confirm that the sector is usable. Even without the/Rswitch, CHKDSK always reads sectors that are associated with metadata. Sectors that are associated with user data are read during earlier phases of CHKDSK if the/Rswitch is specified.

When CHKDSK finds an unreadable sector, NTFS adds the cluster that contains that sector to its list of bad clusters. If the bad cluster is in use, CHKDSK allocates a new cluster to do the job of the bad cluster. If you are using a fault-tolerant disk, NTFS recovers the bad cluster's data and writes the data to the newly allocated cluster. Otherwise, the new cluster is filled with a pattern of 0xFF bytes.

If NTFS encounters unreadable sectors during the course of normal operation, NTFS remaps the sectors in the same way that it does when CHKDSK runs. Therefore, using the /R switch is usually not essential. However, using the/Rสลับเป็นวิธีสะดวกเพื่อสแกนไดรฟ์ข้อมูลทั้งหมดถ้าคุณสงสัยว่า ดิสก์อาจมีเซกเตอร์เสีย

การทำความเข้าใจเกี่ยวกับข้อกำหนดเวลา CHKDSK

คำอธิบายเกี่ยวกับระยะของการเรียกใช้ CHKDSK ก่อนหน้านี้ช่วยให้คุณเท่านั้นกว้างกรอบของงานสำคัญที่สุดที่ CHKDSK ทำการตรวจสอบความสมบูรณ์ของวอลุ่ม NTFS chkdsk ทำให้ตรวจสอบเฉพาะเพิ่มเติมจำนวนมากระหว่างแต่ละรอบและเช็คหลายอย่างรวดเร็วระหว่างผ่านไปยัง อย่างไรก็ตาม แม้เช่นกว้างกรอบให้ข้อมูลพื้นฐานบางอย่างสำหรับการสนทนาต่อไปนี้ของตัวแปรที่ส่งผลต่อจำนวนเวลาที่ CHKDSK จะเรียกใช้ และผลกระทบของข้อความใหม่/cและ/iสวิตช์ที่พร้อมใช้งานใน Windows XP

ตัวแปรที่ 1: การ "ดัชนี" ระยะ

ในระหว่างการแรก และสามระยะของการเรียกใช้ CHKDSK (ตรวจสอบแฟ้ม และการตรวจสอบตัวบอกความปลอดภัย), ความคืบหน้าของตัวบ่งชี้ "เปอร์เซ็นต์ให้เสร็จสมบูรณ์" คือค่อนข้างราบรื่น เซ็กเมนต์ที่บันทึกแฟ้มที่ไม่ได้ใช้ต้องใช้เวลาน้อยกว่าการประมวลผล และตัวบอกความปลอดภัยที่มีขนาดใหญ่ใช้เวลาเพิ่มเติม กับ กระบวนการ แต่โดยรวม "เปอร์เซ็นต์สมบูรณ์" คือ reflection ที่ถูกต้อง fairly ของเวลาแท้จริงที่ขั้นตอนจำเป็นต้อง

However, this percentage/time relationship is not necessarily applicable to the second phase, when CHKDSK examines indexes (NTFS directories). The time that it takes to process a directory is closely tied to the number of files and subdirectories that are in that directory, but the "percent completed" during this phase is based only on the number of directories that CHKDSK must examine. There is no adjustment for how long it might take, for example, to process a directory that has an extremely large number of files and subdirectories. Unless the directories on a volume all contain about the same number of files, the "percent completed" that is displayed during this phase does not reliably reflect the actual time that the second phase requires.

To make matters worse if you are caught in the middle of an unexpected CHKDSK procedure, the second phase of CHKDSK is the one that typically takes the longest to run.

Variable 2: The Condition of the volume

Many factors that concern the state of a volume play a role in how long CHKDSK takes to run. A formula for predicting the time that is required to run CHKDSK on a given volume would have to include such variables as the number of files and directories, the degree of fragmentation of the volume in general and of the MFT in particular, the format of file names (long names, 8.3-formatted names, or a mixture), and the amount of actual damage that CHKDSK must repair.

Variable 3: Hardware issues

Hardware issues also affect how long it takes for CHKDSK to run. The variables include the amount of available memory, CPU speed, disk speed, and so on.

Variable 4: The CHKDSK settings

If you do not use the/Rswitch, the biggest time concern on a given hardware platform is the number of files and directories that are on the volume, rather than the absolute size of the volume.

For example, without the/Rswitch, a 50-gigabyte (GB) volume that has only one or two large database files might take only seconds for CHKDSK to run. ถ้าคุณใช้การ/Rswitch, CHKDSK has to read and verify every sector on the volume, which adds significantly to the time that is required for large volumes. On the other hand, running CHKDSK on even a relatively small volume might require hours if the volume has hundreds of thousands or even millions of small files--regardless of whether you specify the/Rสลับไป

Predicting CHKDSK time requirements

As you can see, running CHKDSK can take anywhere from a few seconds to several days, depending on your specific situation. The best way to predict how long CHKDSK will take to run on a given volume is to actually do a trial run in read-only mode during a period of low system usage.

However, you must use this technique with great care, for the following reasons:
  • In read-only mode, CHKDSK quits before it completes all three phases if it encounters errors in earlier phases, and CHKDSK is prone to falsely reporting errors. For example, CHKDSK may report disk corruption if NTFS happens to modify areas of a disk while CHKDSK is examining the disk. For correct verification, a volume must be static, and the only way to guarantee a static state is to lock the volume. CHKDSK locks the volume only if you specify the/Fswitch (or the/Rswitch, which implies/F). You may need to run CHKDSK more than once to get CHKDSK to complete all its passes in read-only mode.
  • CHKDSK is both CPU- and disk-intensive. The time that it takes to run CHKDSK is affected by how much load is on the system and whether CHKDSK runs online or during the Windows XP startup sequence. Which factor becomes the bottleneck depends on the hardware configuration, but high CPU usage or heavy disk I/O while CHKDSK is running in read-only mode will inflate the CHKDSK running time. Also, Autochk.exe runs in a different environment from that of Chkdsk.exe. Running CHKDSK through Autochk.exe gives CHKDSK exclusive use of CPU and I/O resources, but it also prevents CHKDSK from using virtual memory. Although you might expect Autochk.exe to run faster than Chkdsk.exe, Autochk.exe may actually take longer if the computer has relatively little available RAM.
  • Fixing corruption adds to the time required. In read-only mode, CHKDSK runs to completion only if CHKDSK does not find any significant corruption. If a disk shows only minor corruption, you can predict that fixing the problems will not add much to the time that is required just to run CHKDSK. But if CHKDSK finds major damage, for example from a serious hardware failure, you can predict that the time that is required to run CHKDSK will increase in proportion to the number of damaged files that CHKDSK must repair. In extreme cases, this can more than double the time that it takes for CHKDSK to run.

Introducing the /C and /I switches

The /C switch

กระบวนการ/cswitch 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."

ใช้แบบ/cswitch can speed up CHKDSK by about 1 to 2 percent, but using this switch can also leave directory "loops" on an NTFS volume. Such loops might be inaccessible from the rest of the directory tree, and some files might be orphaned in the sense that Win32 programs, including backup programs, cannot see the files.

The /I switch

กระบวนการ/iswitch directs CHKDSK to skip the checks that compare directory entries to their corresponding file record segments. With this switch in effect, directory entries are still checked for internal consistency, but the directory entries are not necessarily consistent with the data that is stored in the corresponding file record segments.

How much time you will save by using the/iswitch is difficult to predict. Typically, the/iswitch lowers CHKDSK times by 50 to 70 percent, depending on factors such as the ratio of files to directories and the speed of disk I/O relative to CPU speed.

ใช้แบบ/iswitch has these limitations:
  • You may have directory entries that refer to incorrect file record segments. In this case, any program that tries to use such an entry will encounter errors.
  • You may have file record segments that no directory entry references (another way that orphaned files occur). A file that is actually intact, as represented by the file record segment, may be invisible to all Win32 programs, including backup programs.

The value of the /C and /I switches

When disk corruption is detected on a volume, there are three basic options for response.

The first option is to take no action. On a mission-critical server that is expected to be online 24 hours a day, this is often the choice of necessity. The drawback is that relatively minor corruption can snowball into major corruption. Therefore, consider this option only if keeping the server online is more important than guarding the integrity of the data that is stored on the corrupted volume. All data on the corrupted volume should be considered "at risk" until you run CHKDSK. The second option is to run a full CHKDSK operation to repair all file system data and restore all of the user data that can be recovered by means of an automated process. However, running a full CHKDSK operation can cost you several hours of downtime for a mission-critical server at an inopportune time. Your third option is to run an abbreviated CHKDSK operation by using one or both of the/cและ/iswitches, to repair the kinds of corruption that can snowball into bigger problems in much less time than a full CHKDSK requires.

Note however that running an abbreviated CHKDSK does not repair all of the corruption that might exist. You still need to run a full CHKDSK at some future time to guarantee that all recoverable data has in fact been recovered.

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

คุณสมบัติ

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

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

 

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