CHKDSK is a command on computers running DOS, OS/2 and Microsoft Windows operating systems that displays the file system integrity status of hard disks and floppy disk and can fix logical file system errors. It is similar to the fsck command in Unix. It is short for "Check disk". On computers running NT-based versions of Windows, CHKDSK can also check the disk surface for physical errors or bad sectors, a task previously done by SCANDISK.
CHKDSK can be run from the Windows Shell, the Windows Command Prompt or the Windows Recovery Console. One option for CHKDSK is the use of the Command-line/R parameter, which allows the program to repair damage it finds on the hard drive.
Conducting a CHKDSK can take some time, especially if using the /R parameter, and the results are often not visible, for various reasons. The results of a CHKDSK conducted on restart using Windows 2000 or later operating systems are written to the Application Log, with a "Source" name of Wininit or Winlogon and can be viewed with the Event Viewer. On the Windows 7 operating system, look for events with a "Source" name of "Chkdsk"
The standard version of CHKDSK supports the following switches :
filename FAT only. Specifies the file or set of files to check for
fragmentation. Wildcard characters (* and ?) are allowed.
path FAT only. Specifies the location of a file or set of files within the
folder structure of the volume.
size NTFS only. Changes the log file size to the specified number of
kilobytes. Must be used with the /l switch.
volume FAT and NTFS (NTFS support is unofficially supported but works
normally) Specifies the drive letter (followed by a colon),
mount point, or volume name.
/c NTFS only. Skips checking of cycles within the folder structure.
/f Fixes errors on the volume. The volume must be locked. If CHKDSK
cannot lock the volume, it offers to check it the next
time the computer starts.
/i NTFS only. Performs a less vigorous check of index entries.
/l[:size] NTFS only. Displays current size of the log file. If size is
specified, changes the log file to that size (in kilobytes).
/p Checks disk even if it is not flagged as "dirty"
(only available in the Recovery Console).
/r Locates bad sectors and recovers readable information (implies /f and /p)
If CHKDSK cannot lock the volume, it offers to check it the next time the
computer starts.
/v On FAT: Displays the full path and name of every file on the volume.
On NTFS: Displays cleanup messages, if any.
/x NTFS only. Forces the volume to dismount first, if necessary.
All opened handles to the volume are then invalid (implies /f ).
/b NTFS only, since Vista. Clears the list of bad clusters on the volume
and rescans all clusters for errors (implies /r).
/? Displays the list of available CHKDSK switches.
When running CHKDSK from the Recovery Console the options are different. The /p is not read-only as in the standard version but corrects errors :
/p Fixes errors on the volume. Same as the /f option in standard CHKDSK.
/r Locates bad sectors and recovers readable information (implies /f and /p)
Takes much longer to run than /p by itself.