Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

When we run the chkdsk command on C drive in windows it won't run but will prompt you to schedule the command later when we reboot the system. Why?

share|improve this question
up vote 6 down vote accepted

To run low level chkdsk routines that are going to scan and move bad sectors or to correct file system errors, the disk must be unmounted and locked to prevent corruption from unwanted file system access during the chkdsk scan and repair.

On most Windows systems, drive C is also the system drive. You have things like the virtual memory paging file open and under continuous access. You cannot have chkdsk make a low level change under these conditions and maintain the integrity of the drive. So to make sure that all files are saved, closed and scanable, chkdsk asks if you want to scan during startup.

On the next startup, Windows loads enough of itself into memory with the appropriate disk subsystem drivers to access the disk and prior to mounting it, proceeds to notify the OS that write operations are suspended, proceeds then to scan the disk file structure for integrity and if told to do so, scan for unreadable sectors.

Once it's finished checking the file system, correcting errors and writing out recovered file fragments to check files, the system mounts the volume and proceeds to boot.

The other disk (D?) is not a system disk, and isn't running any processes that won't close files, so when chkdsk asks for a dismount and lock, the disk complies and then chkdsk fires up and runs to completion.

share|improve this answer

I have had this issue before. It is because another process is using the disk and chkdsk needs to use the entire disk. Two programs cannot access the same data at once, or it is corrupted.

For chkdsk to run correctly, no other programs can be accessing the disk, so basically the only times it can run is when the computer is being shut down (the option it provides) or immediately on startup.

share|improve this answer
You said chkdsk needs the entire disk, But we can run the same command on the other drive how is it possible as the same scenario comes here? – raj Dec 15 '11 at 3:25
I'm assuming drive C: is the main drive on your system (the one the OS runs from). If it is, it will be almost constantly in use or have locked files due to OS services – Nate Koppenhaver Dec 15 '11 at 3:28

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .