Link to home
Create AccountLog in
Avatar of kvb
kvb

asked on

Chkdsk completes all steps successfully, then hangs and doesn't start Windows XP

Whenever I restart Windows XP Pro, I am prompted to run chkdsk. When I do run chkdsk, it completes all of the steps (3 or 5 steps, depending on /f option), but then chkdsk seems to hang or freeze and does not continue to launch Windows. I have to turn off the power, and then go through the same prompts to run chkdsk again. I cancel the launch of chkdsk and Windows starts up with no problems. I think a defrag program is set to require chkdsk to be run before a disk can be analyzed and defragged. Although chkdsk does complete all the required steps, the "switch" indicating that chkdsk has been run never gets set (because of the freeze I assume). Is there some way to correct this problem so the system acknowledges that chkdsk has been run and I should not be prompted to run it again at each startup, or an attempt to defrag? Why is chkdsk freezing? I am having a similar problem trying to run SAFE mode. SAFE mode starts and scrolls through lines of code, but then the system hangs and does not even launch SAFE mode. Again, I must turn off power, etc.
Avatar of LeeTutor
LeeTutor
Flag of United States of America image

I copied this from somewhere, but I didn't record the source in my database:

what you're experiencing is what Windows refers to as "setting the dirty bit" and what you have to do is unset that bit. Every time Windows XP starts, autochk.exe is called by the kernel to scan all volumes to check if the volume dirty bit is set. If the dirty bit is set, autochk performs an immediate chkdsk /f on that volume. Chkdsk /f verifies file system integrity and attempts to fix any problems with the volume. It is usually caused by a hard shut down or a power loss during a read-right operation on that particular drive.

How do I fix it, you ask?

Well, that's easy. First click Start> Run> bring up a command prompt by typing in "CMD" and type " fsutil dirty query d: ". This queries the drive, and more than likely it will tell you that it is dirty. Next, type "CHKNTFS /X D:". The X tells Windows to NOT check that particular drive on the next reboot. At this time, manually reboot your computer, it should not do a Chkdsk and take you directly to Windows.

Once Windows has fully loaded, bring up another CMD prompt and type and now you want to do a Chkdsk manually by typing "Chkdsk /f /r d:". This should take you through 5 stages of the scan and will unset that dirty bit. Finally, type "fsutil dirty query d:" and Windows will confirm that the dirty bit is not set on that drive.
Avatar of kvb
kvb

ASKER

Thank you so much for your response. Unfortunately, your instructions did not resolve my problem. I followed your instructions through to the point where Windows does not check the drive and I got to Windows without having to deal with chkdsk prompts. However, when I ran chkdsk manually (Chkdsk /f/r d:), I ran into the same problem I had been having. Chkdsk completes all five steps ("Verification of free space completed" is the last statement displayed), but then it hangs and I must turn off the power. When I turn it back on, I once again get the chkdsk prompt, which I cancelled. I tried "fsutil dirty query d:", and it identified the disk as still being dirty.
You have a fairly common problem, that has been asked a number of times.  This similar Previously Answered Question has some good advice, including resetting the "dirty" bit:

https://www.experts-exchange.com/questions/22005657/chkdsk-issue.html
chkdsk issue

And a couple of others, with different answers:

Using a registry tweak to turn off the repeated running of chkdsk at startup ->
https://www.experts-exchange.com/questions/20897563/Chkdsk-runs-every-startup.html
Chkdsk runs every startup

Another registry tweak to turn it off ->
https://www.experts-exchange.com/questions/21523608/Chkdsk-at-boot-up-every-time.html
Chkdsk at boot-up - every time!!
i would connect the drive to another system, and run chkdisk on it then; i also would test it, to be sure about it's status with :  http://www.tacktech.com/display.cfm?ttid=287
Avatar of kvb

ASKER

Thanks for the information and links. I somehow got startup to run without prompting for chkdsk. (It might be related to removing Diskeeper from startup programs, but don't know.) However, when I run "fsutil dirty query c:", I still get a result indicating that the c: drive is dirty. I've been afraid to try to run chkdsk, or defrag, or anything that might bring the problem back--but I am concerned about the "dirty" disk. I also found this enry in the registry: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager:
BootExecute REG_MULTI_SZ " autocheck lsdelete autocheck autochk/k:C* "
I get the impression from checking out some ot the suggested links, etc., that this is not a good thing? Any thoughts or suggestions?
ASKER CERTIFIED SOLUTION
Avatar of LeeTutor
LeeTutor
Flag of United States of America image

Link to home
membership
Create an account to see this answer
Signing up is free. No credit card required.
Create Account
Avatar of kvb

ASKER

Thanks Lee. With your help I think I finally got several "kinks" fixed on my computer. I'll keep my fingers crossed and hope that the revisions will continue to keep things stable on my computer. I'm new to using forums to ask questions and seek asistance, and I'm not sure exactly how this forum works, and what the protocols are for posting, etc. Anyway, thanks again for your help.