2

I had a recent power outage while using my computer, with a 1TB hard drive being directly accessed as the power went out. When the power came back on, and I rebooted my computer, one of my 1TB hard drives would not register with WinXP SP3, and showed a Total Space of 0, and an Available Space of 0. The file system (NTFS) also did not register...every entry for the drive was either blank or zeroed. My assumption is that the file tables were damaged/corrupted because the drive was being directly accessed when the power went out.

After doing some research, I ran CHKDSK with whatever default options it runs with (I'm not sure what they are as I didn't see them displayed). Upon completion of CHKDSK, the drive registered with WinXP as a 1TB hard drive, with an accurately-reflected amount of available space.

But CHKDSK also deleted about 16GB of files from their original directories, and changed them all into sequentially-named *.chk files.

My question is how can CHKDSK be run in a situation like mine where the file tables needed to be restored, but without having CHKDSK delete any files from their original directories, even if they may be damaged/corrupt? I'd simply like to be able to run CHKDSK and have it restore the file tables, and repair bad sector damage, as it did, but not have it do anything else such as delete files and convert them to CHK files.

Any ideas? Or is there a CHKDSK alternative that can perform the same functions without the file deletions?

2
  • 1
    chkdsk doesnt delete files, it just tries to recover fragments of files that it can
    – Keltari
    Commented Mar 18, 2014 at 1:03
  • So how could CHKDSK even run if there was no identifiable file system on the disk?
    – kreemoweet
    Commented Mar 19, 2014 at 3:04

3 Answers 3

2

I think what you want to be accomplished is not feasible. Or does not make sense: Having file tables restored etc. but not actually touching files is a quite orthogonal operation. Either you need to adjust the filesystem, or the filesystem is okay.

5
  • Let me try to clarify. I'm assuming the table that lists the directories and files was corrupted, which prevented the computer from displaying the files and directories, and accurately computing the amount of total space & available space. But I also assume that the files on the disk were intact and undamaged. I want a tool that will simply scan what is on the drive, where the files are on the drive, and restore the file table based on that scan. CHKDSK did do all that, but it also deleted 16GB of files and changed them to .chk files, which is the part I don't want to happen.
    – CHKDSKuser
    Commented Mar 18, 2014 at 1:22
  • Basically I want a tool to scan for errors on the disk and in the file directory/structure, but leave everything where it originally was. I don't want actual files moved or deleted, I just want to get the file table and directory structure restored.
    – CHKDSKuser
    Commented Mar 18, 2014 at 1:25
  • Yes, and this is not possible due to the way filesystems work (or anything structured): If the filesystem lost track of some blocks of a file or found duplicates or files that appear to be present in the hierarchy but shouldn't be, you can't just mark everything clean and be happy. Marking your filesystem consistent doesn't make it consistent. Commented Mar 18, 2014 at 19:11
  • I wouldn't mind if there are corrupted files, data blocks missing from some files, etc...I can replace and move them to clean data blocks as needed. I wouldn't mind if the filesystem isn't consistent (marked by CHKDSK as "dirty")...I just want a tool that can scan whatever is on the hard drive, in whatever directory it's in, and simply display that in a directory structure...disregarding data corruption and filesystem consistency. I just want to be able to access whatever is still intact, WITHOUT altering the file names of directory locations of anything on the drive. Such a tool has to exist.
    – CHKDSKuser
    Commented Mar 18, 2014 at 20:55
  • 1
    @CHKDSKuser you're getting it all wrong. Files are sequences of bytes. They don't have start and end markers of their own. It's the filesystem that has to provide means to distinguish files from each other. If a part of FS table is lost, you can't be completely sure where files start and end. Your untouched files have been recovered completely. .chk files are the bits that couldn't be recovered with 100% certainty what they are. As much as possible has been recovered. What else do you expect from chkdsk?
    – gronostaj
    Commented Mar 19, 2014 at 7:46
0

No, CHKDSK did not and does not "delete" files. It finds unidentifiable data areas on the disk, and can save them as .chk files for possible future recovery. Running CHKDSK in read-only mode is pretty much useless, as the nice essay here will tell you: http://support.microsoft.com/kb/314835. CHKDSK can only detect file system metadata corruption/inconsistency; it has no way to determine if user file data has been corrupted. Fixing file system errors is a necessary first step to detecting or fixing damaged user files.

-1

From reading the documentation and running CHKDSK several times with each option enabled, it seems that running CHKDSK with the Fix /f or Repair (and Recover) /r options is what enables the files to be deleted and renamed as .chk files during the scan. However, it seems that running CHKDSK without the /f or /r options would allow CHKDSK to scan the disk and restore the directory/file structure only. I'll probably stick to using CHKDSK without the /f or /r options in the future. I'd rather keep my original file names and file locations in their original directory, even if the files might be damaged or in a bad data sector. It's easier for me (and a lot less time consuming) to replace/repair damaged files when I get an error message as I access them, and defrag the drive to move files from bad sectors if necessary, instead of going through 16GB of .chk files after CHKDSK /r and trying to figure out what they originally were.

1
  • This answer makes no sense. File data that has lost its associated metadata simply does not exist as a file. They are simply random data sectors, indistinguishable from any other random sectors on the disk. There is no such thing as correcting directory/file structure only, without affecting the "data" files. Directories are files also.
    – kreemoweet
    Commented Mar 19, 2014 at 1:40

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .