How do I keep CHKDSK from running on every start up?

There are times when the disk checking utility needs to run before you boot into Windows. Sometimes it seems to get stuck and does so every time.

//

I have a two year old laptop running Windows XP. I had run “Defrag” and also clicked on the check drive for errors option, which was then scheduled at next restart.

Now this scan program runs every time I start up. How can I shut this off?

Good news: we can turn it off.

Bad news: it means editing the registry.

The “I’m not so sure” news: you shouldn’t have to. It should have turned itself off, and I’m concerned that this might be trying to tell you something.

Checking your disk for errors requires that the checking utility have exclusive access to the hard disk. That means that even Windows can’t be accessing the drive for any reason. If the disk drive you’re checking is the drive on which Windows lives, the error check is then “scheduled” to happen automatically the next time you boot, before Windows loads. It looks much like this while it’s running:

Chkdsk running at system boot time

“It’s possible that there’s an issue preventing the scanner from un-scheduling itself.”

It should happen once. When the utility completes successfully, it should remove that request to run again on boot up, and then reboot. In other words, the next time you boot, which would be upon completion of the scan, it shouldn’t check again.

Before I tell you how to turn it off, I want you to watch it one more time, this time paying particular attention to any error messages that it may produce before it completes. (A digital camera snapshot of the screen, as I’ve done above, is a great way to preserve the error massages before they disappear as the boot continues.) It’s possible that there’s an issue preventing the scanner from un-scheduling itself.

In order to disable the scan we’ll be making changes in the Windows registry. Step one should be: back it up. This Microsoft Support article Description of the Microsoft Windows registry includes pointers to the recommended ways of doing so.

The short version, for those who are ready to dive into the registry: we’re going to change the value of HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSessionManagerBootExecute to autocheck autochk *.

Step by step that means:

  • Start the registry editor by clicking Start, then Run, typing in regedit and pressing OK. The result will be similar to this:

Registry Editor at top level

  • Click on the boxed plus sign [+] in front of HKEY_LOCAL_MACHINE. That will expand and look something like this:

Registry Editor with HKEY_LOCAL_MACHINE expanded
Don’t worry if your instance of Regedit already had some of these expanded; it remembers the last setting. Just follow along as if it hadn’t been, expanding the nodes that we need if they’re not already expanded.

  • Expand (by clicking the boxed plus sign in front of) SYSTEM
  • Expand CurrentControlSet
  • Expand Control
  • Now click on Session Manager, which is listed underneath Control and you should see something like this:

Registry Editor open on HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession Manager

  • In the right-hand pane, double click on BootExecute. This contains the instruction that we want to remove. You should get an edit dialog much like this:

Registry Editor editting the BootExecute setting
The command “autocheck autochk /p ??C:” is what we want to change.

  • Change replace the “/p ??C:” with an asterisk (*). The resulting command, “autocheck autochk *” in the dialog looks like this:

Registry Editor editting the BootExecute setting complete

  • Press OK to dismiss the edit dialog.
  • Close Registry Editor

Now, on your next boot the disk checker should not run.

I say “should” because there are still things that may cause it to run anyway:

You didn’t shut down your machine cleanly. Perhaps your machine crashed or suddenly rebooted. Or perhaps you were in a hurry and turned off the power before Windows said it was safe to do so. In both cases Windows may not have finished updating information on the hard disk on shutdown, so it must check the disk on start up to make sure that everything is ok.

The disk may be failing. It’s sometimes the case that a disk drive, as it starts to fail, will do so in a way that causes Windows to notice and run the disk checking utility on start up. It’s not common, but it can happen.

There are 34 comments:

  1. Dan Ullman Reply

    I have never had to do this in XP but there is an old 98 trick you might try. Start up in windows safe mode and let the scan disk run. If something flaky is running after the system boots that is causing windows not to change the “autocheck” entry it should not run.

  2. Alv Reply

    I have similar problem, and i know the cause. One of my hdds is hooked through bad ide cable (actually it sits in low-quality removable hdd rack). And now my XP keeps checking that hdd on every reboot (and doesn’t find any errors).

    Interesting fact: before there was other hdd connected to that cable and then no long check was performed on boot. System just occasionally then wrote error messages in system log saying “controller error/parity error” (something like that).

    Possible cause in my case is that newer hdd supports higher Ultra DMA mode (5?) than my old hdd supported (2?).

    My XP’s
    HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession Manager BootExecute
    contains autocheck autochk * (XP default).

    I’m still annoyed and don’t know a solution.

  3. Tim Reply

    Thanks Leo. It worked great. I was getting a BSOD with the missing autocheck system message. I had copied the autocheck.exe from my XP Pro CD to my System32 directory which didn’t do anything, I thought it might have gotten corrupted, but booting OK to XP desktop. Added the BootExecute which for some reason was missing from session manager. Possible either CCleaner or RegSupeme cleaned up a little to much of a leftover software program that I in/uninstalled recently. Hard to keep track since I’m dual booting with Vista. Never fret as I backup every couple weeks with Acronis True Image. Got to love Acronis. I love messing around in the registry. Thanks again Leo. Great job on your site. Keep it up and you’ll be eating lunch with Thurrott at the next MS convention.

  4. Jim Reply

    Leo! You da MAN! The registry edit fixed this, after I tried all the other suggestions. I’ve bookmarked your site for the future. Thanks.

  5. Watthon Reply

    I use Windows 2000 and need CHKDSK run every time the system boots up. Referring your instruction, I type the following lines in BootExecute

    0000 61 00 75 00 74 00 6F 00 a.u.t.o.
    0008 63 00 68 00 65 00 63 00 c.h.e.c.
    0010 6B 00 20 00 61 00 75 00 k. .a.u.
    0018 74 00 6F 00 63 00 68 00 t.o.c.h.
    0020 6B 00 20 00 2F 00 70 00 k. ./.p.
    0028 20 00 5C 00 3F 00 3F 00 ..?.?.
    0030 5C 00 43 00 3A 00 00 00 .C.:…

    It works one time but after it the value in BootExexute automatically goes back to

    0000 00 00 ..

    Any idea to keep CHKDSK running at every boot up as it is necessary for my application.

    Thanks.

  6. David Bieda Reply

    I carried out the above as disc check started running every time I re-booted. As far as I can see this is a space between ‘…. autochk *’ and the asterisk. However if I leave a space the other wording pops up again when I re-check the registry so I deleted the space.

    This has stopped autocheck from running (thank you!) but when I reboot a blue screen appears saying skipping disk check as disabled. Should that happen?

    I assume I can still run it manually?

    By the way I’m not very technically minded.

    David Bieda

  7. David Bieda Reply

    The exact wording which now apeears on my screen on re=start is:
    ‘Autocheck programme not found – skipping AUTOCHECK’
    Which means my machine is still trying to start autocheck each time it starts.

    db

  8. robert nagler Reply

    Ran CHKSDK with the (disk):/f option on e partition affected, that cleared the command to run it at startup. It worked I don’t know why.

  9. Brian Reply

    I need a fix for my c drive. I get a message that comes from the toolbar at the bottom. It says msn.exe-corrupt file. The file directory c: is corrupt and unreadable. Please run the chkdsk utility. I did that and finally found your solution to shut the chkdsk off, I hope it works. My question is how do I now fix that error message. My computer will no longer play video when I am online and I need that for school.

  10. Beata Reply

    I had this autocheck autochk * when I opened register and one of diskkept checking every time

  11. louise Reply

    i had chkdsk checking every time on boot i came here and did all the steps and got to the edit reg and the bootexecute autocheck already had an * so what do i do not to get it to stop????

  12. Keith Ward Reply

    autocheck autochk /r ??C:
    autocheck autochk /r ??E:
    autocheck autochk *

    autocheck autochk /k:D *
    THE ABOVE IS MY BOOTEXEC. ANY SUGGESTIONS AS TO WHAT TO CHANGE SINCE I HAVE NO COMMAND STRINGS WITH THE /P OPTION? THANK YOU IN ADVANCE

    IN METTA

  13. Lee Nelson Guptill Reply

    Anybody know why when I boot up everytime I get the message, “Checking file system on C: the type of file system is NTFS – the volume is dirty. Chdsk is verifying” and then it goes through stage 1 of 3, stage 2 of 3, and then stage 3 of three checks. It takes several minutes of booting up because of this.

  14. Lee Nelson Guptill Reply

    Hi Leo, I carefully read your answer to the question, “How do I keep CHKDSK from running on every start-up?” but none of the answers exactly applied to me. This is what my error says: “Checking file system on C: the type of file system is NTFS – the volume is dirty. Chdsk is verifying” and then it goes through stage 1 of 3, stage 2 of 3, and then stage 3 of three checks.” Naturally, it takes longer than average to boot up.

    Just wanted you to know that I seriously tried and am not being lazy ‘cuz I know you are a busy man.

  15. Harry Reply

    Leo, you are a ‘God Send’……I have been struggling for weeks with this issue and have googled many a site to find the solution and then I found this answer and it worked. It simply worked. Thanks for your clear and consise answer, I was able to have my computer (once again) start without going through the CHKDSK check every time I started it up…..thanks. For a (relative)newbie it was so simple and easy to follow…..thanks a million.
    Thanks again for all your help

    Harry (Northern Ireland)

  16. Alexandra Reply

    Hi,
    My computer gets to this light blue screen AND runs the CHKDSK but once the check is 100% done it never leaves the blue screen and allows me to move forward in the startup so I don’t get a chance to turn it off. What should I do?

  17. Kareem ( Iraq ) Reply

    Dear Leo,I read your explanations and applied them but still I have the same problem which is(at every start up the computer scanning drive F only).
    Waiting your help
    Thanks alot

  18. B.dhanasekaran Reply

    Hi Leo,
    I just tried putting one inverted comma and a star and the problem got solved. Thanks a lot

  19. Dhanuja Kaluarachchi Reply

    Once my computer shut down improperly and now my computer has slowed down and CHKDSK runs every time I boot. I tried “msconfig” but CHKDSK wasn’t there. Then I tried it your way but “BootExecute” file already contains the instruction “autocheck autochk *”. I still haven’t figured out a way to solve this. Please help me.

    Thank you

  20. Vishal Reply

    Hi Leo, Is there any software that saves current settings at every step when I m working on my PC. if u can suggest me any this type of software that saves settings each time & chkdsk will not come at every boot.
    if u an ans. plzzz mail me.
    i m waiting…

  21. suman Reply

    Is this CHKDSK error due to Power issue?

    It can be, but there are many, many other possible causes as well.

    Leo
    19-Nov-2010

  22. Sandi Brockway Reply

    My computer never gets into XP program, only keeps running CHKDSK when i restart it. shows no errors, but will not allow normal start of XP. sometimes wants to use some alternative boot, then says it finished chckign disk and it is clean and ok. then stall stall. one time it chose Normal Windows startup, but nothing happened. i would love to get into xp to regedit if i could.

  23. Manny Reply

    I am using Windows XP and AVG. I shut down my computer properly however, every restart will trigger a chkdsk operation.
    I found that I have a corrupted avg receipt in pdf format which I cannot open nor delete. I think this is the cause of the problem. How can I delete it?
    Thanks!

  24. Nymathin Reply

    yeah, my laptop runs chkdsk every start up and when I went to edit the registery, the command line was already there with the *. Guess I’ll just have to live with it.

  25. Thomas Tinker Reply

    My XP machine has this problem. BootExecute in my registry was already set to autocheck autochk *. Only F: drive has this problem. Chkdsk doesn’t run for C, D, or E. Reading the above, my best guess is the cause may be that I didn’t shut down my machine cleanly once recently. The PC was locked up, so I had no choice. That being the case, what would be my next step?

  26. David Usher Reply

    Windows 7 Autochk *still shows upon screen even after running chkdsk “f”!!!

Leave a reply:

Before commenting please:

  • Read the article. Seriously. You'd be shocked at how many people make comments that prove they didn't.
  • Comment only on the article. If you have a new, unrelated question start with the search box at the top of the page.
  • Don't post personal information. Email addresses, phone numbers and such will be removed.

VERY IMPORTANT: because of a rise an comment spam that's making it through our filters any comments that do not add to the discussion - typically off topic or content-free comments - run a very high risk of being flagged as spam and removed.

If you have a new question unrelated to the article above, ask it on the Ask Leo! ask-a-question page.