So, about a year ago I was making some changes in my systems because I was adding a new server and this allowed me to move a lot of data off of my working machine and onto that new server. I also had a new working machine which allowed me to reappropriate my old working machine for other purposes, and this allowed me to move all sorts of data to new locations.
As you can imagine the hard drives were warming up and the ones and zeros were flying. When I was nearly done—and this is always when it seems to happen—I made two mistakes.
First, I had a 500gb drive with three partitions: a 20GB FAT32, a 300GB NTFS, and a 180GB NTFS. All of the data was on the middle partition (about 289GB) and I planned to keep the data on that partition. I ran gParted and looked at the three partitions. Then I drug the starting point of the 300GB middle partition to the left until it covered the 20GB partition completely. This is where gParted failed me. I now had showing two partitions on that drive: a 320GB FAT32 partition and a 180GB NTFS partition. (Yes, you read correctly: my former 300GB NTFS was now improperly marked as FAT32 after the resizing.) I had never seen this sort of thing before and I wasn’t sure what to make of it. So I opened the drive up in Windows again to see what the verdict was (I didn’t bother moving the end point of the partition as I didn’t want to make any further changes to the drive). Windows confirmed that I had two partitions: a 20GB FAT32 parition and a 180GB NTFS partition. Twenty gigs? Fuck. No files? Double-fuck.
I hit the gParted forums. No one had any idea why this would happen. No one else has apparently had this happen. I have had good luck with gParted in the past, but this was a real drag.
Fine. I set the drive aside and moved on to the last task on my list: rebuild an old XP machine that was running like a salted slug. Now comes mistake number two. What do I do but delete the data partition instead of the os partition while running the installation. Not my day. Oh, well. Delete the os partition and rebuild the machine.
As fortune would have it, neither of these drives contained anything I really cared about. All of that had been moved to the server. This was mostly different crap I’d downloaded (music, movies, books, &c.). Set that drive aside as well. No sense crying over spilt milk. Besides there are always ways to fix these things.
Since I really didn’t care about these files this went to the bottom of my priority list. However, yesterday I was picking through LifeHacker when I came across something very promising called Partition Find and Mount that has moved toward a solution to this problem.
I did look at some possible fixes over the last year, but because these files where not very important I rejected anything that didn’t work without a lot of hassle. Thusfar Find and Mount seems to work like a charm.
The low-level scan (Intellectual Scan) of the 500GB drive did not turn up the partition I was seeking. However, the second level scan (Normal Scan) did. I was able to use Find and Mount to then mount that parition as a Windows drive letter. (There is a third level scan—Thorough Scan—which is a sector by sector scan.) Once that partition was mounted I was able to drag and drop all those old files off that drive. It’s a little silly because all I’m going to do is reformat that drive and move them all back—which is why I was moving the partitions to begin with—but I can live with this.
The one draw-back to this software is that the free version throttles you at a half a meg per second. I am moving 289GB of data. I started it last night and probaby about ten minutes after I went to bed Windows threw an error (time difference on server) and halted the transfer. (Fucking Microsoft!) But, I have it back up and running again this morning. I will try that other drive next, but I predict there will be no troubles and that one is much smaller.
One more tool in my toolbox. Thanks, LifeHacker.
Notes on transfering your files:
If you are only recovering a small number of files, this section is not for you. On the other hand if you, like me, had to move many gigs of data you will benefit from my experience.
The application works as expected. It does what is promises to do. However, you will see two adversaries in using the free version. The free version includes a throttle (the Pro version does not), and you have to run this application inside of Windows. This section will give you my best advice for dealing with these adversaries.
Windows famously fumbles itself about. If it were a dancer, it would yearn to have two left feet. It would be an improvement. The transfers you set up will occasionally get mixed up. Windows will encounter some kind of error (can’t move this file because I’m forgotted) and you will have to figure out which specific transfer has konked out so that you can resume that particular transfer. However you decide to perform your data transfer, keeping this in mind is paramount so that you can best manage your transfers and keep the whole boat sailing smoothly.
The application only allows you to move files—it appears to mount the defunct partitions as read-only in some fashion. Besides you may want to avoid performing any sort of write or delete operations on the partition until you have moved all your stuff safely off anyway. When Windows moves files it’s a bit easier to tell what you have and have not moved: they are gone from the source once they are moved. This advantage is lost when you are copying your data to a new location. Manage your transfers so that when they fail you will be able to resume the transfer without wasting time in retransfering successful files.
I leave it to you to discover your preferred method. For my part, I did my transfers in discrete chunks which I could monitor and easily identify should any particular chunk fail.
Now about that throttle problem… It looks as though the application throttles on a per-transfer basis (rather than an application-wide or partition-wide basis). What this means for us is that it is better to transfer all the children as individual transfers than it is to transfer the parent with all of its contents. Preferring the children to the parent method also makes managing the failed transfers easier.
I will explain. Suppose you have a parition with a folder called MUSIC which itself contains 100 folders named after each band. Each band folder contains 1GB of music and thus the MUSIC folder contains about 100GB of data. If you merely transfer the parent folder (MUSIC) the throttle will limit you to a half a meg per second of data transfer. If instead you perform a copy operation for each child (band) folder, the throttle will limit each transfer to a half a meg.
Using the parent method your transfer rate is at most 512 KB/s; using the child method your transfer rate is at most 100 x 512 KB/s (in theory). I don’t know that I saw transfer rates at 50 megs, but I was able to transfer a 100GB folder faster than a 64GB folder using the child method on the larger and the parent method on the smaller. (Subsequently I cancelled the 64GB transfer and initiated individual file transfers for the movie files contained therein.)