When powered on, Windows automatically performs a full disk check using the chkdsk.exe utility on any volumes marked with a dirty bit flag. If a volume has a dirty bit set, this indicates potential file system errors, incomplete transactions, volume inconsistencies, or other disk issues that require validation and repair. The dirty bit flag can also be set for disks in the case of a sudden system shutdown (due to a power failure or forced reboot), or if hard disk damage is detected.
If Windows detects a dirty bit flag on one of the disks during startup, the To skip disk checking, press any key will appear on the screen. If the user doesn’t press any key within the 10-second countdown, chkdsk will automatically start scanning the disk for errors and repairing them.
Once the automatic disk check procedure using the chkdsk tools has started (triggered by chkntfs settings or dirty bit flags), it cannot be canceled and may take a considerable amount of time (up to several hours, depending on disk size and file count), during which the user will not be able to use their computer.
If the disk check has been run once, you should just wait for it to finish. However, sometimes the disk check is run every time the computer is booted up, which irritates users. Disabling this disk check is an option, but it is not recommended as it can result in losing control over the integrity of your file system.
Use the following command to find out whether the specified drive requires a disk check (whether it is marked by the dirty bit flag):
fsutil dirty query c:
If the drive is marked as dirty and will be automatically checked when the computer boots, the command will return:
Volume - c: is Dirty
An administrator can use the chkntfs command to disable automatic checking for specific or all drives at Windows boot. The following command, for example, excludes drives C: and D: from the automatic checking procedure:
chkntfs /x d: c:
The current configuration for automatic disk checking at boot is stored in the BootExecute registry parameter under the HKLM\SYSTEM\CurrentControlSet\Control\Session Manager key.
After disabling the check for drives C: and D:, the value of this parameter changed to:
autocheck autochk /k:C /k:D *
To stop a specific drive from being checked, add its letter with the /K parameter (used to exclude drives from being checked). For example, to disable the automatic disk check for the C: drive only, change the registry value to:
autocheck autochk /k:C *
autocheck autochk *
To restore the default configuration, change the registry value as follows:
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager" /v BootExecute /t REG_MULTI_SZ /d "autocheck autochk *" /f
Or you can revert to the default settings (all system disks are checked for dirty bits at boot, and chkdsk is run only for disks with errors) by running:
chkntfs /d
To schedule a one-time check of a specific drive the next time you reboot Windows, specify its drive letter in the following command:
chkntfs C: /c
This will add the autocheck autochk /m \??\C: entry to the BootExecute registry setting, which will be automatically deleted after performing a disk check the next time the computer boots.
Cancel a scheduled disk check:
chkntfs /x c:
chkdsk C: /f /r ( /r – full check, /f – automatically fix errors)
This will prevent the accumulation of file system errors and minimize the risk of data loss from logical errors (lost clusters, cross-references). It will also prevent data loss on bad blocks by marking them as unwritable.
Check the disk health using:
chkntfs f:
The message F: is not dirty means that no errors have been found on the disk, so it doesn’t need to be checked.






