Monday, March 7, 2011

How to run Chkdsk

Starting Check Disk

You can run CheckDisk under Windows XP or Vista using one of the following methods:

  1. In Explorer or My Computer, right click on the drive, select Properties, select the tools tab, and click on the Check Now button. Check both of the available options and click Start button. If you are checking your boot disk, you will be asked if you want to start CheckDisk when the system reboots. Click the Yes button and reboot your computer.
  2. How to run Chkdsk from My Computer or from Windows Explorer

    1. Double-click My Computer, and then right-click the hard disk that you want to check.
    2. Click Properties, and then click Tools.
    3. Under Error-checking, click Check Now. A dialog box that shows the Check disk options is displayed,
    4. Use one of the following procedures:
      • To run Chkdsk in read-only mode, click Start.
      • To repair errors without scanning the volume for bad sectors, select the Automatically fix file system errors check box, and then click Start.
      • To repair errors, locate bad sectors, and recover readable information, select the Scan for and attempt recovery of bad sectors check box, and then click Start.
      Note If one or more of the files on the hard disk are open, you will receive the following message:
      The disk check could not be performed because the disk check utility needs exclusive access to some Windows files on the disk. These files can be accessed by restarting Windows. Do you want to schedule the disk check to occur the next time you restart the computer?
      Click Yes to schedule the disk check, and then restart your computer to start the disk check.

    Windows Hard Drive Utilities: chkdsk utility, defrag utility, backup utility

  3. Start a command window and type CHKDSK/? to get a listing of all the options. As an example, to check and repair errors on the C drive use this command:
    CHKDSK/F/R C:

    How to run Chkdsk

    Notes
    • Chkdsk requires exclusive access to a volume when it runs. Therefore, if one or more of the files are open on the disk that you want to check, Chkdsk displays a prompt asking if you want schedule the disk check for the next time that you restart your computer.
    • Chkdsk might take a long time to run, depending on the number of files and folders, the size of the volume, disk performance, and available system resources, such as processor and memory.
    • Chkdsk might not accurately report information in read-only mode.

    How to run Chkdsk at the command prompt

    1. Click Start, and then click Run.
    2. In Open, type cmd, and then press ENTER.
    3. Use one of the following procedures:
      • To run Chkdsk in read-only mode, at the command prompt, type chkdsk, and then press ENTER.
      • To repair errors without scanning the volume for bad sectors, at the command prompt, type chkdsk volume:/f, and then press ENTER.

        Note If one or more of the files on the hard disk are open, you will receive the following message:
        Chkdsk cannot run because the volume is in use by another process. Would you like to schedule this volume to be checked the next time the system restarts? (Y/N)
        Type Y, and then press ENTER to schedule the disk check, and then restart your computer to start the disk check.
      • To repair errors, locate bad sectors, and recover readable information, at the command prompt, type chkdsk volume:/r, and then press ENTER.

        Note If one or more of the files on the hard disk are open, you will receive the following message:
        Chkdsk cannot run because the volume is in use by another process. Would you like to schedule this volume to be checked the next time the system restarts? (Y/N)
        Type Y, and then press ENTER to schedule the disk check, and then restart your computer to start the disk check.

Autochk.exe

For Win 2000, XP, or Vista, autochk.exe is the chkdsk program that gets run at boot time specifically for the boot hard drive. If you try to run chkdsk on the boot drive, your job will be scheduled to run when Windows boots because chkdsk cannot work when any files on the disk are open.

The 'dirty bit' on the file system is used to trigger autochk.exe at startup. While windows is running, you can check the status of the dirty bit by entering this fsutil command into the cmd window (start >> Run >> cmd.exe):

fsutil dirty query C:

If autochk runs at boot time but you did not schedule it to do so, then some file system error event must have set the dirty bit. This should be a one time event because Autochk will clear the dirty bit when it completes successfully.

If autochk continues to run every time you boot your computer then you likely have a hardware problem. You can verify the problem by running a hard drive manufacturer's diagnostics on the drive. If there is any indication of a hard drive problem, consider yourself lucky that you can still read your data, and run out to buy that bigger hard drive you've been looking at.

Notes on the Command Line Version

Command line parameters:

  • /R - locate errors on the disk

  • /F - fix errors on the disk

In the command line version, if you just enter the command without any other parameters, you will get no useful results and the check disk utility may even look like it's stuck. So, at a minimum, use the '/R' flag to locate bad blocks.

Some command line versions require a space between the flags and the command:

CHKDSK /F /R C:

Check Disk Utility History

The six character file name shows that this utility has its origins in the old MS-DOS world of eight character file names. The name is short for "CheckDisk." Its original function was to verify the consistency of the file system FAT pointers. Then along came the ScanDisk utility that incorporated the file system checking features of CheckDisk and added the ability to examine the hard disk for media defects. Now in Windows XP, the ScanDisk utility has gone away and its newer features have been incorporated back into CheckDisk.

Before MS-DOS 5.0, the program file was a com file: "chkdsk.com"; in MS-DOS 5.0 through the Windows systems, the program file is an exe file: "chkdsk.exe". To further complicate the naming nuances, when you go through the XP disk properties menu, CheckDisk is called "Error-Checking".

Hardware Considerations

CHKDSK is a high-level file system utility and so it is not concerned about various low-level details of your hard disk drive. It doesn't matter to chkdsk if your hard drive is a terabyte or 80 megabytes. It doesn't matter if the drive manufacturer is Seagate, Western Digital, Maxtor, Hitachi, or whoever. It doesn't care if your hard drive interface is Parallel IDE, SATA, SCSI, or USB. It doesn't care if your 'C: drive' is just a small partition on a larger hard disk.

The CHKDSK utility works on any drive that has been formatted with a Windows supported file system; this typically means either NTFS, FAT32, or one of the FAT32 predecessors.

Frequently Asked Chkdsk Questions:

  1. Windows was unable to complete the disk check

  2. Cannot Determine File System of Drive

Other Disk Repair Options

Solving system problems can be difficult and it's possible that your problem is not really with the hard disk drive but some other software component such as your registry. In fact, many vexing PC problems have been fixed merely by cleaning the registry. For a modest price, you can download a comprehensive PC problem solver that includes a registry cleaner. Don't be fooled by programs such as RegCure that merely sell you a yearly subscription to a registry cleaner, instead System Mechanic is a comprehensive program that checks other parts of your system and it keeps working year after year without additional fees.


The following table lists the exit codes that Chkdsk reports after it has finished:

Collapse this tableExpand this table
Exit codeDescription
0No errors were found.
1Errors were found and fixed.
2Disk cleanup, such as garbage collection, was performed, or cleanup was not performed because /f was not specified.
3Could not check the disk, errors could not be fixed, or errors were not fixed because /f was not specified.

For more information about Chkdsk, visit the following Microsoft Web sites: For more information about Chkdsk, click the following article number to view the article in the Microsoft Knowledge Base:
314835 (http://support.microsoft.com/kb/314835/ ) An explanation of the new /C and /I switches that are available to use with Chkdsk.exe
For help with common system maintenance tasks in Windows Vista, visit the following Microsoft website:
Fix problems with common system maintenance tasks (http://support.microsoft.com/gp/system_maintenance_for_windows)