perform a CHKDSK on an NTFS image?

I have a system with a hard drive that has a few bad sectors. I used ddrescue to recover all available sectors on the drive, but the drive continues to develop new bad sectors so I junked it. Two runs by the manufacturer tool indicated DIFFERENT blocks of bad sectors, and two passes with SpinRite both resulted in DIFFERENT unreadable sectors, so the drive is no longer reliable.

The partition was on a 500GB drive, but only about 40GB of the partition is used, so I was going to replace the drive with a smaller drive (a 120GB) for now.

All I have now is an image produced by ddrescue of the NTFS partition (e.g. /dev/sda1). This file is on my NAS and is a full 500GB in size.

My dilemma is that all of the NTFS tools will not operate on the drive at all because there are a couple of inconsistencies due to the unrecovered sectors. Only about six sectors were eventually unrecoverable (only 3K!) but these are still throwing the NTFS filesystem into a fit. Therefore, I can't resize the partition, use ntfsclone, or anything. I can run the tools on the image file, but they all instruct me to CHKDSK the partition in Windows which I can't do since it's just a raw image sitting on my NAS.

The problem is I don't currently have a spare 500GB drive to copy the image to in order to do this. Since the file is 500GB, I can't clone it to a smaller drive and of course I can't use ntfsresize.

So what I'm trying to figure out is if there's a way I can run chkdsk on the image file. I do have VMWare and VirtualBox however there's two problems: one, the image file is JUST the NTFS partition, not including the partition table etc. Plus, it's a raw image, not in the format needed by either of these virtualization tools.

Any advice on how to get the image repaired so I can then use the NTFS tools on it?


Solution 1:

If you have access to a Windows system that can attach the image, ImDisk may let you mount the raw image.

Solution 2:

  • Use recovery application to recover your files on the drive.
  • by booting into linux distro with the mounted image file