• Welcome to Overclockers Forums! Join us to reply in threads, receive reduced ads, and to customize your site experience!

How can automatic running of chkdsk be permanently disabled? (I know it shouldn't be)

Overclockers is supported by our readers. When you click a link to make a purchase, we may earn a commission. Learn More.

c627627

c(n*199780) Senior Member
Joined
Feb 18, 2002
How can automatic running of chkdsk be permanently disabled? (I know it shouldn't be)

...but I have a specific reason for wanting to disable automatic running of chkdsk (it sometimes runs after improper reboot, etc...) I understand that this shouldn't be done on most systems used by average users.

This can be done if I go to
HKEY_LOCAL_MACHINE \ SYSTEM \ CURRENTCONTROLSET \ CONTROL \ Session Manager \

and change the value of BootExecute to
autocheck autochk /k:cdefghijklmnopqstuwxyz*


However the value changes "itself" after a while to
autocheck autochk /k:cdefghijklmnopqstuwxyz*
autocheck autochk *

(the autocheck autochk * is added which causes chkdsk to run after a dirty bit is detected...)


When I make the change back and try to export this change to a reg file I see that other values have been exported as well.

What should the contents of a reg file be that ONLY set the BootExecute value found under
HKEY_LOCAL_MACHINE \ SYSTEM \ CURRENTCONTROLSET \ CONTROL \ Session Manager \
to
autocheck autochk /k:cdefghijklmnopqstuwxyz*



Also, please note that the following information only temporarily disabled automatic running of chkdsk on my system due to dirty bit being detected:

1. Info listed here:
http://support.microsoft.com/?kbid=160963

2. Info redduc900 provided, a reg file:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager]
"AutoChkTimeOut"=dword:0000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager]
"BootExecute"=hex(7):61,00,75,00,74,00,6f,00,63,00,68,00,65,00,63,00,6b,00,20,\
00,61,00,75,00,74,00,6f,00,63,00,68,00,6b,00,20,00,2a,00,00,00,00,00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon]
"SFCScan"=dword:00000000

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\cleanuppath]
@=hex(2):25,00,53,00,79,00,73,00,74,00,65,00,6d,00,52,00,6f,00,6f,00,74,00,25,\
00,5c,00,73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,63,00,6c,00,\
65,00,61,00,6e,00,6d,00,67,00,72,00,2e,00,65,00,78,00,65,00,20,00,2f,00,44,\
00,20,00,25,00,63,00,00,00
 
About the only other thing I can suggest to try would be to add/modify the DWORD Values (chances are that the Values aren't present, and will need to be added) under the following Registry Keys...

HKEY_LOCAL_MACHINE | SOFTWARE | Microsoft | Windows NT | CurrentVersion | Winlogon

Add or modify the following Value name...
SFCScan = DWORD Value data of 0

HKEY_LOCAL_MACHINE | SYSTEM | CurrentControlSet | Control | Session Manager

Add or modify the following Value name...
AutoChkTimeOut = DWORD Value data of 0
 
I deleted the actual boot execute key a couple of days ago and check disk wouldnt run at startup even after improper shutdown etc. I doubt if this advice is good or safe though...
 
The values redduc900 suggested were already set as he described, so now:


1. What is the text of the reg file that resets the value of BootExecute to
autocheck autochk /k:cdefghijklmnopqstuwxyz*

2. Deleting BootExecute from the registry just means you would have to recreate it should you ever wish to run chkdsk, right?

So this may be easier than deleting autocheck autochk * all the time.


Conclusions after years of research on this subject:

It would appear that automatic running of chkdsk cannot be permanently disabled. It can only be temporarily disabled by using CHKNTFS.EXE like so: http://support.microsoft.com/?kbid=160963

or

if you go to HKEY_LOCAL_MACHINE \ SYSTEM \ CURRENTCONTROLSET \ CONTROL \ Session Manager \

and change the value of BootExecute to
autocheck autochk /k:cdefghijklmnopqstuwxyz*


However the value changes "itself" after a while to
autocheck autochk /k:cdefghijklmnopqstuwxyz*
autocheck autochk *

(the autocheck autochk * is added which causes chkdsk to run after a dirty bit is detected...)


Closest you can therefore get is to manually delete the
autocheck autochk *
line periodically so that the only BootExecute value remains
autocheck autochk /k:cdefghijklmnopqstuwxyz*
 
"Deleting BootExecute from the registry just means you would have to recreate it should you ever wish to run chkdsk, right?"

As you probably know, you can also run it by right clicking the volume>properties>tools. Or the command prompt obviously.
 
Yes. Once in a while I like to set all partitions to be deftragmented and for CHKDSK to run on all partiotions upon reboot and before Windows loads up. Here's how I do it, I ssume I need BootExecute for that, don't I:



To schedule CHKDSK on next boot, open any folder on the partition that you wish to check >
My Computer > Right Click on drive partition > Properties > Tools TAB > Check now...

If a folder on this drive is open, you will be given an option to do a scan on next boot.

Repeat for any other partitions that need to be scanned upon reboot.

Reboot and before Windows boots into desktop, chkdsk will commence for all partitions.
 
c627627 said:
Once in a while I like to set all partitions to be deftragmented and for CHKDSK to run on all partiotions upon reboot and before Windows loads up. Here's how I do it, I ssume I need BootExecute for that

No, BootExecute is not needed to schedeule chkdsk to run on next startup. If chkdsk is scheduled to run though it creates a new BootExecute key with value [][][][][][][][][] []
 
Note that deleting BootExecute gives a nice little error message (...autochk.exe not found, etc.) upon bootup, but restoring BootExecute in registry solves the problem.

Anyway, right clicking on BootExecute doesn't give an Export option and what I'd really like to do is to have a .reg file that only changes the BootExecute value and nothing else:

Double clicking on a reg file to change HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager
BootExecute value to
autocheck autochk /k:cdefghijklmnopqstuwxyz*

That's it. Anyone know if this can be done with a double click?
 
Back