chkdsk, autochk, dirty bit, fsutil confusion

  • Thread starter Thread starter Gerhard Fiedler
  • Start date Start date
G

Gerhard Fiedler

Hello,

I know that fsutil is WinXP, but I thought since this is about the file
system (NTFS) and there's not XP file system ng...

My problem is this: I wanted to force a chkdsk on boot, kind of
programmatically. I read that if the dirty bit is set, autochk runs that
boot time chkdsk. I also read that with fsutil I can both query and set the
dirty bit of an NTFS partition. So I did -- but now there's no boot time
chkdsk on that drive anymore.

e:\>fsutil dirty query c:
Volume - c: is Dirty

When I boot, no chkdsk happens.

e:\>chkntfs c:
The type of the file system is NTFS.
C: is dirty. You may use the /C option to schedule chkdsk for
this drive.

I tried the /C option of chkntfs, but no chkdsk at boot either. I also
tried "chkntfs /D" to no avail.

I also tried the "normal" way and scheduled a boot time check through
"chkdsk c: /f", but still no boot time chkdsk happened.

I still can schedule boot time chkdsk on my other partitions (D:, E: etc).

Can somebody help me out here? How do I get the boot time chkdsk on my C:
drive back?

Thanks,
Gerhard
 
Hello,

I know that fsutil is WinXP, but I thought since this is about the file
system (NTFS) and there's not XP file system ng...

My problem is this: I wanted to force a chkdsk on boot, kind of
programmatically. I read that if the dirty bit is set, autochk runs that
boot time chkdsk. I also read that with fsutil I can both query and set the
dirty bit of an NTFS partition. So I did -- but now there's no boot time
chkdsk on that drive anymore.

e:\>fsutil dirty query c:
Volume - c: is Dirty

When I boot, no chkdsk happens.

e:\>chkntfs c:
The type of the file system is NTFS.
C: is dirty. You may use the /C option to schedule chkdsk for
this drive.

I tried the /C option of chkntfs, but no chkdsk at boot either. I also
tried "chkntfs /D" to no avail.

I also tried the "normal" way and scheduled a boot time check through
"chkdsk c: /f", but still no boot time chkdsk happened.

I still can schedule boot time chkdsk on my other partitions (D:, E: etc).

Can somebody help me out here? How do I get the boot time chkdsk on my C:
drive back?

Thanks,
Gerhard

Make sure that the BootExecute Value Name at
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager
is set to
autocheck autochk *

Once that is done, try tip 58 in the 'Tips & Tricks' at http://www.jsifaq.com
 
Make sure that the BootExecute Value Name at
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager
is set to
autocheck autochk *

Thanks for your help. The pointer to this registry entry was valuable, even
though it didn't provide a solution yet...

This key was set to

autocheck autochk /p \??\C:
autocheck autochk *

According to the information I found, this is supposed to unconditionally
run chkdsk on the C: drive (and then do the normal check for dirty drives).
Yet this didn't happen. I deleted the first line, left the second (the
default line) and rebooted. No chkdsk on the C: drive happened (even though
chkntfs and fsutil still show the dirty bit to be set).
Once that is done, try tip 58 in the 'Tips & Tricks' at
http://www.jsifaq.com

This tip basically told me to run "chkdsk c: /f" and answer "y" when asked
whether I want a boot time check. I did this, and it put the "autocheck
autochk /p \??\C:" line back into the BootExecute value -- put it back to
where it was before I deleted that line. Rebooted, and still no chkdsk on
boot.

This all happened after I used fsutil to set the dirty bit (chkdsk ran fine
on boot before that).

Any other ideas? Is there any way to clear the dirty bit?

Thanks,
Gerhard
 
What happens when you boot the Recovery Console and try CHKDSK C: /p /r

I ran "chkdsk c: /p" from the recovery console. Now fsutil shows a cleared
dirty bit on drive C: -- so that's good, this is at least back to normal.

But when I run then from a normal command prompt "chkdsk c: /f" again and
schedule it to run on boot, it still doesn't run. When I do this, it sets
the BootExecute value to

autocheck autochk /p \??\C:
autocheck autochk *

but this has no effect -- chkdsk doesn't run during boot.

I tried to set the BootExecute value manually to

autocheck autochk /p \??\D:
autocheck autochk /p \??\C:
autocheck autochk *

This had the effect that boot-time chkdsk ran on D:, but not on C:.

The line with D: went away after it ran during boot, but the line with C:
is still there. chkntfs tells me all the time (as long as I don't delete
this line manually) that "Chkdsk has been scheduled manually to run on next
reboot on volume C:"... but it never runs.

This is beyond me...


A little bit off-topic:

While I was looking at the recovery console, I figured I'd try to install
it to run from the harddrive. The WinXP CD is a pain, in that it loads
forever all kinds of drivers that I never will use on this system, before
it brings up the first prompt.

But this didn't work... When I tried the winnt32.exe that was on my CD, it
told me that this was an old system and that it won't run. When I tried the
winnt32.exe that is part of SP2 (from the full XP SP2 download), it ran but
it couldn't find the files to install... Is there some kind of magic
procedure to install the recovery console on the harddrive after the system
has been upgraded to XP SP2?

Thanks for any help,
Gerhard
 
Yes. You must intergrate (slipstream) SP2 into the CD (on a diks if you
like) and use the slipstreamed copy.

See tip 8863 in the 'Tips & Tricks' at http://www.jsifaq.com

Learning something new here every day... :)

Very cool thing, this slipstreaming. Should've know about this some time
ago.

But tip 8863 didn't work with my OEM XP CD and the XP SP2. It seems my XP
CD has SP1 applied to it (slipstreamed into it?), and when I run
update.exe, it says "This Service Pack cannot be integrated into a
destination that also has integrated Software Updates."

I googled around a bit and found this link
http://vbdotnet.home.comcast.net/XP_SP2.htm , which seems to be the most
elaborate and consistent description I found of what's necessary so
slipstream SP2 into an OEM CD with SP1.

It may be as simple as deleting the file SVCPACK.INF and the folder SVCPACK
from the I386 folder (as another post I found suggested), but this page
says that this may not be enough.


I'd still be grateful if someone had an idea about my boot-time chkdsk
problem (described in the earlier posts).

Thanks,
Gerhard
 
Back
Top