Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

So had a problem where a 16GB ISO was damaged(likely my own fault using standard windows copy dialog instead of proper copy tool like robocopy with verification turned on).

It took several hours but i managed to restore the ISO(basicly i rebuilt the damaged parts and recompiled).Namely some .rar archives inside it were unreadable but the ISO itself was readable.

So im wondering how can i further protect something like this from happening again?.Obviously proper copy tool but mayble something else?.Perhaps set as "read only" could help?.I generally don't move these files a lot and if i need to acces them then it's only for opening/extracting.

share|improve this question
    
Sounds like Robocopy is the real solution. Strange, I have been copying ISO and all my archived data with copy paste for years without issue. Might be time for me to change my habits with RichCopy...technet.microsoft.com/en-us/magazine/… –  Moab Dec 30 '10 at 17:35

3 Answers 3

up vote 2 down vote accepted

Large file copy operations can expose latent hardware faults, particularly in the source and destination drives, but really at any point of the transfer (as Phoshi has pointed out). The problem is especially acute when moving archives as opposed to individual files - a few bad bits in the wrong place can leave you with an unmountable iso or unopenable rar. Despite this, archives are an excellent choice for file transfer since it is easy to verify that you have made a true copy.

The process is to:
1) Generate the MD5 hash of the original archive,
2) Perform the copy,
3) Generate the MD5 hash of the copied archive,
4) Compare the results.

Any difference in the two archives will result in a failed match of the hashes and alert you to a bad copy. Under windows you can use WinMD5Free.

There are also a couple of things you can do to tune your computer and maybe identify any problems if you are having issues getting a good copy:

a) Running memtest from a linux bootable cd (or Windows 7 has something similar) will reveal problems with your ram (these typically make themselves known via the BSOD anyway but it doesn't hurt to check).

b) A disk utility such as MHDD or Spinrite can repair your source drive by moving the data from bad to good sectors, re-attempting the read until a good copy is made even from quite damaged sectors. Bad sectors are then flagged unusable. Run the same tools on the destination drive to clean out bad sectors there. (Don't use chkdsk (the inbuilt windows utility). While it is fine for correcting simple filesystem errors it will do some pretty terrible damage to your data if your drive has a lot of bad sectors and leave you nothing but a bunch of useless .chk files as compensation).

c) Change connecting cables.

share|improve this answer
    
Option c) .I have had problems before with cables where i would get random bluescreens that have been resolved after cable switch.But anyway those are all good suggestions. –  TMRW Dec 30 '10 at 18:24

If something gets damaged in transfer that has nothing to do with the file format, and I'd be checking both devices, as well as whatever medium it transferred through (USB cable? SATA?)

To make sure it doesn't happen again, though, you do have a lot of options. Robocopy would be a good, efficient method as failure wouldn't necessitate restarting, but there are also "Windows Copy Replacements", like TeraCopy, that do the job better and may be worth switching to just because. If you absolutely must not lose this file, you could try placing it in a split rar archive with redundant pieces, so it can be rebuilt even with data integrity loss to some of the archives (Though that's more data to transfer, which may not sound great). Setting the read-only bit won't help, as the file isn't being written to, per se, it's just not being written right on the other end.

I would like to stress, though, that corrupted data could be indicative of a greater issue, and solving the effects is not the same as solving the cause.

share|improve this answer
    
I copied from one internal drive to another trough SATA2 –  TMRW Dec 30 '10 at 18:23
    
@TMRW; I'd run chkdsk on both, then. –  Phoshi Dec 30 '10 at 18:54

Store the files inside a file designed for archiving, like a RAR file with a recovery record.

share|improve this answer

Your Answer

 
discard

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.