Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to copy all my files from my NTFS Windows XP drive to a folder on my new NTFS Windows 7 drive, including Program Files, etc. just in case I need them.

  • I have an external drive I can use as an intermediate stage, but I don't trust it. So I want a way that includes a checksum or other error detection/correction.
  • There's plenty of room on all the drives, so I don't need to waste time compressing files.
  • I (think I) want all the NTFS metadata preserved as much as possible, as long as this doesn't prevent me from accessing files in the new environment or whatever. I want datestamps, etc. preserved, at least.

Is there a way to create a disk image that's error-resistant? Should I use an archive format and just bundle up the entire drive?

share|improve this question

In windows, I like to use md5summer to generate a file of md5 checksums for files in a directory structure. Then, after the transfer, I can make sure that everything transferred correctly. Of course, if down the road a disk error occurs, this doesn't provide any data recovery/error correction, but at least I can easily detect if there was a problem with a transfer of any particular file.

share|improve this answer

What you want is a program called TeraCopy. It integrates into Windows and not only does it do all file operations quicker, it has a lot of extra features. One of them is checking to make sure each file was copied successfully. It will do a comparison between the source and the destination each file it copies. When the whole copy process is done it will show you all (if any) files that failed to copy along with the reason for it.

If you really want to go the "image file" route, you can just RAR or ZIP everything up. Do a md5 of the archive. Copy to the external, md5. Copy to final destination, md5. If the md5 values are the same at all points you can be reasonably sure that everything is intact.

share|improve this answer
Do you know if TeraCopy can output whatever it uses to do the comparison for later, for example months or years later, verification that the copied data is still uncorrupted? – pcapademic Jan 13 '10 at 9:32
I've bundled them up in a .7z, but it doesn't preserve the creation date, setting everything to today. – endolith Jan 13 '10 at 15:41
up vote 0 down vote accepted

Much better solution:

So I was copying all files with 7zip archives, in the hopes that I could continue running these applications with the same data files in Windows 7, and it kept failing on CRC errors (apparently my disk is dying as well as the video card). Unfortunately, it also looks like Windows 7 64-bit is incompatible with all kinds of stuff I need to run. So I was getting frustrated and apprehensive.

However, it turns out there's an "XP mode" that will run applications inside a virtual machine to keep them compatible. Not only that, but there's a utility for converting your entire hard disk into a virtual hard disk for using inside this virtual machine! So not only can I copy all the files over to the new machine as a disk image, I can actually run my old apps inside the virtual machine if they aren't compatible with Windows 7, and not miss a beat.

  1. Run havdetectiontool to see if your processor supports it
  2. Enable virtualization in processor if not already enabled
  3. Install WindowsXPMode_en-us and then Windows6.1-KB958559-x64
  4. in the real XP machine, run Disk2vhd and copy your hard disk onto an external drive image (check the "fix HAL" option)
  5. Copy the drive image onto the Windows 7 machine.
  6. Go to Windows Virtual PC
  7. At the top, there is button for Create virtual machine, click it
  8. On the Add a virtual hard disk page, Use an existing virtual hard disk and select the drive image

Now your previous Windows XP installation is virtualized inside the Windows 7 installation, and you can attach USB devices and everything. You can also mount the virtual disk when the virtual PC is turned off, and move all the documents from it to the main hard drive, and then still see them all in the shared drives inside the virtual PC.

share|improve this answer

You can clone the drive with DriveImage XML.

As the name indicates, the drive image is saved XML file. you can use DIXML to explore the image and extract files separately from the image or restore it in all its beauty should the need arise.

alt text

DriveImage XML is freeware.

share|improve this answer

You can use ddrescue which is the same as dd but it will try and rescue data if a read error occurs. ddrescue is a linux program you might be interested in if you know a but of linux

share|improve this answer
That will create an image of the drive, though. How would I mount such an image in Windows? Why do a disk image if all three drives are NTFS? Drive images aren't error-resistant. – endolith Jan 12 '10 at 19:36

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.