I have a USB connected harddisk of which many (1000s) files can not be read. The problem is, these files seem randomly distributed over the drive, and it takes a very long time (over an hour) before the drive gives up on trying to read each of these files. So a simple copy process is out of the question.
I have in my mind two possible ways to approach this. I'm not sure how I would perform this in practice, if it is at all possible.
My first thought would be to minimize the amount of time it takes before giving up trying to copy a file, to for example 10 seconds. However I have not found any way to do this, maybe this would require an OS- or hardware-level change? I have tried killing copy processes, but short of unplugging the drive nothing seems to work. (And before anybody suggests: no, "robocopy /w:10" does not fix this.)
My second thought would be to log every file that is being tried, then when a file copy gets stuck I can unplug the drive, and restart the process, skipping the problematic file by skipping any files that have previously been logged. Since we're talking 1000s of files, I have to be able to run multiple processes parallel.
Is there anybody able to help me with my problem? Tell me how I can perform either option, or suggest other approaches?
Thanks for any advise!