My company has a customer whose users are all field personnel equipped with laptops. Those mobile users needed a remote backup solution that saved data to a central location. I’m sharing their story with you because, with help from Ubuntu, my company was able to resolve a major data management headache.
Alas, this storage management story didn’t start off too well. The initial recommended solution didn’t work out. Initially, the customer tried to use Acronis True Image (a fine program in its own right, when used for the right purpose) to take an image of the hard drive. Then the user would move that image over WAN to an FTP server.
Still, there were two main problems with that approach:
- The data was not encrypted. Even though it’s an image file, anyone who knew how to listen to that traffic would probably know how to read that file.
- Have you ever tried to move a 40GB file over WAN? This method offered no recovery. If the transfer failed, it would start again from the beginning. And a 40GB transfer is almost guaranteed to fail at least once. Naturally there were never any successful backup transfers using that initial approach.
After the project proceeded for more than a year, I was handed the task: “Here’s the scoop, client’s waiting, fix it.”
I quickly found installers for SSH and rSync for Windows (here: www.itefix.no), and tried it out. Initial testing worked really well. I set up test users with shared SSH key pairs to circumvent passwords, scheduled a windows batch file to run a few times a week, and there you have it — remote Windows backups.
The big bonuses:
- The solution is free (other than my time), it offers secure encryption, and it’s way fast and lightweight.
- It also gives the client error recovery and incremental transfers.
So now, if a transfer is interrupted, say by a spotty wireless connection, the next time it runs it will pickup where it left off.
Where Ubuntu Fits In
I used my home Ubuntu Server in conjunction with my Ubuntu 8.10 laptop to do the initial testing of setting up SSH and rSync, both over LAN and WAN. With proof of concept, I started testing on a Windows Server 2003 with my laptop.
Naturally, when I successfully setup my Linux laptop to backup to the Windows server, it was a short matter to roll it over to the Windows XP client laptops in the field, using the installers I referenced above.
Our Operations Manager was excited when he learned that I use Ubuntu. It “told him that I can think outside the box.” While I like to think that’s true, and I often catch flak for it from the other guys, there comes a point when it’s not even about that anymore. It’s about solutions that work in real world situations, that meet needs in the most efficient way possible.
WorksWithU Contributing Blogger Toby Deemer runs Ubuntu 8.04 to manage a large law firm network.
WorksWithU is updated multiple times per week. Don’t miss a single post. Sign up for our RSS and Twitter feeds (available now) and newsletter (launching in 2009).
Read More About This Topic
Share This Post
Interact: Add a Comment | Trackback Link | Permalink
Subscribe: RSS Feed

Don't miss Charlene O'Hanlon's weekly columns...
I don’t hear enough solutions using rsync. Seriously, it must be one of the easiest free incremental backup solutions around.
I have had a fabulous time with rdiff-backup, which is like rsync, and even uses librsync, but also stores increments. It is amazing, seriously amazing, and simple.
I am doing exactly what your client wants at our home. We have three linux laptops, all of which backup to a Windows server using rdiff-backup on both ends. rdiff-backup has a native windows version, or you can run it through cygwin.
As a home user I don’t really need incremental backups. But I do need a backup. I just use the cp command with a few switches to speed things up a little and give me some feed back about what’s happening. Here’s the command I use.
sudo cp -r -u -x -v /home/ /media/USB_HDD_EIDE_01D
-r causes cp to copy directories recursively.
-u causes cp to only copy files that have changed if they already exist at the target location.
-x stops cp from jumping to another file system. Useful if your using symbolic links. My back up drive isn’t big enough to hold my 1TB RAID 0 array. And that doesn’t store anything critical anyway. So no need to back it up.
-v causes cp to report back what it’s doing.
All my data goes to an external USB drive.