5

So I hear pretty regularly that stopping a chkdsk in progress is bad and can possibly destroy data on your hard drive. I can't seem to find any information as to why this is bad though.

What can stopping chkdsk while it is running do, and why? At what points is chkdsk not doing destructive processes and might be safer to stop?

(Some background: We have a chkdsk running that is likely to take several more hours. We accidentally ran it right after running it. It is a chkdsk /B on Windows 7. I am not concerned with the practical how to stop it exactly, as I am willing to wait, but am much more concerned with the theory of why we shouldn't just stop it.)

Zell Faze
  • 343
  • 2
  • 5
  • 15

3 Answers3

5

The chkdsk program repairs corrupt data structures. This commonly requires matching writes -- oversimplifying, one to remove data from the wrong place and one to attach data to the right place. If you shut the power down when one write is committed to the medium but not the other, the data can be left fully detached.

There are simply too many writes with too many dependencies to ensure that the data is consistent at every conceivable point. If you remove power, you are stopping the process at a random point that may or may not be consistent.

David Schwartz
  • 31,215
  • 2
  • 53
  • 82
  • 1
    For those who are reading the above answer, it might also be useful to read Fiasco Labs' comment on Yannis' answer. – Zell Faze Apr 02 '13 at 04:32
0

"Chkdsk locks the volume for exclusive access and termination of chkdsk may lead to unforeseen problems."

source: http://community.spiceworks.com/topic/142733-can-you-cancel-chkdsk-while-it-is-running

Yannis
  • 35
  • 3
  • But what problems in particular? And why does killing power when the drive is locked for exclusive access cause issues? If the only thing that is running is chkdsk...? Also quoting from that thread "This is a boot time scan, so this does not apply." – Zell Faze Apr 01 '13 at 00:40
  • A beautifully scrambled Master File Table with near total data loss if you're lucky. Anything that interrupts its repair routines if that was what it was doing has pretty bad consequences. – Fiasco Labs Apr 01 '13 at 01:05
  • 2
    /b Clears the list of bad clusters on the volume and rescans all clusters for errors (implies /r). So you've possibly added all the bad clusters back before remarking the unreadable and truly garbage ones as well. – Fiasco Labs Apr 01 '13 at 01:10
0

I am not a Windows administrator, however that being said chkdisk is a filesystem check. In my own personal experience stopping a filesystem check in progress can lead to worse filesystem issues then what prompted you to run it in the first place.

This is because the filesystem is already corrupted, the filesystem checker is in the process of moving things around and trying to fix it, and if you were to stop it suddenly it could leave things half moved, therefore more broken.

If you know the filesystem is no longer corrupted then it would seem likely that chkdisk would not actually change anything if it found nothing wrong and as such would be safer to stop, though that is complete speculation on my part.