Huge Discounts on Mobiles, Books, Cameras, Computers etc: @Flipkart

Wednesday, February 08, 2012

Copying between computers?

Atleast once in a few years you would run into this scenario. You bought a new computer/laptop or at work you got a new system and now you have to copy over the whole data (100s of GBs) in a few days! Migrating to a new machine is not an easy task. It consumes a lot of time, energy and patience :-)

Every time I run into this issue, I try to discover the best way to do so. As years go by, technology improves and we have better and faster ways to do it. Find below various methods I tried and my take on the best approaches...

Disk Clone:
There are a lot of disk clone tools available which would replicate your disk as is. But it has drawbacks as well, what if you have an OS pre-installed. Also if your current disk has errors/bad sectors cloning could fail.

Backup/Sync Tools:
Each sync tool pose some challenge. For example, some tools copy into complex proprietary binary formats and you can't even browse or choose particular files from the backup. Also generally such tools take more time since it compresses and maintains logs etc. I tried SyncToy from Microsoft after evaluating many, but it was painfully slow!

Network copy:
This is pretty straight forward! Connect both systems on your home/office network and copy files thru network shares/mounts. This is quite time consuming and could choke your network.Also you can't pause/resume and might have to wait for hours (or days) before you can take away your laptop for example.

Peer-to-Peer copy:
New generation network cards are very smart. Earlier you had to use a twisted pair cable to network directly without a router. Now you can use your normal network cable and it would establish a P2P direct connection. This doesn't go thru your network and would be considerably faster. You would get an IP similar to

Assuming you established the network, what is the best way to copy the large number (1000s) of files? You can create a network share and open it or map as a drive and use normal Windows copy. Bad idea, it would take a looooooot of time! Also make sure you turn off your antivirus and firewall (at your own risk) to speed it up a bit. I tried using some copy tools (Teracopy, ExtremeCopy, FastCopy.. etc) but ended up having weird errors from Windows like not enough server storage etc. I found that a better option (seems faster too) is to use FTP. You can download a free FTP server and client (I chose Filezilla) and this way you can copy either way easily. Filezilla supports sync browsing, directory comparison etc too. Expect around 8 MB/s.

Though FTP via direct networking was working pretty well, I still had to keep my both laptops connected for a long time! So finally I ended up using a big fast USB external drive. This option along with an enhanced copy tool like TeraCopy turned out to be the smartest option ;-) TeraCopy increases default file throttle like buffer, speed etc and handles errors (file exists, file in use etc) gracefully without interrupting overall copy process. But there could be cases where you left it overnight and after 10 minutes it paused with some prompt... lol! Though I have to copy twice (Machine1 -> USB HDD -> Machine2), in the process took a backup of my data too!! Also I achieved speed in the range of 15 MB/s. Double the speed of direct connection (half the time), so not a bad deal.

Another option you can try is to use a Firewire cable for direct connection. Firewire could be much faster than USB and you would be copying directly between machines!