Sunday, 30 December 2012

Looking for a backup application for a small home network

I have been looking at backup solution for the last few days and I am stuck, so I am asking for pointers or suggestions.

Since all backup solutions are appropriate to various needs, here are my requirements for my home network (two laptops backup on a very low powered server with a 3TiB HDD):
  • Free software/open source cross-platform solution - must be able to backup both Linux and Windows clients
  • network backup (to a Debian server, storage on HDD)
  • very low CPU and memory needs on the server side (server is a de-underclocked Linksys NSLU2 running Debian armel)
  • automatic backups with low maintenance cost and easy setup and recovery (setup once, forget about it)
  • easily accessible filesystem based storage
  • clients should be smart enough to detect when they aren't in the home network and not try to backup when away
  • available in Debian
These are the basic requirements, and bonus-points requirements include:
  • Windows clients don't need Cygwin
  • optional encryption (for storage)
  • default sanity checking for stored files (detection/correction of corrupt backed-up files)
  • unduplication (if present, sanity checking is mandatory)
  • logarithmic storage is a plus
  • Web/nice interface for both client and server is a plus
According to the info I found, candidates for these criteria are Amanda and BackupPC. I like the rsnapshot idea of deduplication and incremental backups, but it's not available for Windows. BackupPC seems to be OK-ish, but it sounds too much like a bunch of Perl scripts and Windows support sounds like an after-thought and I dislike the idea of installing Cygwin just to provide some *nix tools.

I discarded Bacula, because the general impression I got from what I read is that it is hard to set up, has its own storage and has heavy needs for both clients and server. It sounds like overkill.

So what do other people recommend for my setup? Is Amanda OK? Did I get the wrong impression regarding BackupPC?


naoliv said... maybe?

Anonymous said...

rsync w/ an rsync server on the nslu2. I used this for years and it worked great. Only switched from the nslu2 as it was also my fileserver and the network speed began to annoy me.

It is pretty flexible w/ a bit of shell scripting. I started with the 7 day incremental from and tweaked it from there.

The shell scripts should certainly be easy to reproduce in a windows friendly batch file or whatever they use. has some windows choices that might be useful.

Anonymous said...

rsnapshot, but in pull mode from the nslu2 ?
It seems to meet all requirements (not sure for "low CPU and memory needs" on the nslu2 ?), and a lot if not all bonus-points.

Andrew Shadura said...

How about obnam? Probably it's possible to make it run on Windows...

Bob said...

I am using BackupPC and it is pretty nice. It isn't "just a bunch of perl scripts." Although command lines are available I mostly find the web interface more than sufficient. Works well. I would give it a second look.

Adrian Fita said...

Give areca-backup a try. It's not a server-client application, it's just a Java application, but I find it very good. I run it from the laptop on which I mount a directory from the backup server through samba for the backup target. You can automate it with cronjobs (windows task scheduler) and you can put a small test in the starting script where you check whether the backup target directory is available.

Anonymous said...

Another vote for rsync. I use this


Paul Morgan-Roach said...

BackupPC works well, is very slick and does exactly what it should do. You don't need to do anything client side - just feed SMB credentials for the Windows machines or ssh/rsync credentials for the *nix based machines and tell it what to back up. Backups are initiated from the server - so when a client is connected to the network, BackupPC will find it and start an incremental backup.... requires a bit of configuration to get going, but massively fine-tunable :)

filippo said...

BackupPC is a very good solution (three computers, GNU/Linux only) that I use since ages. Saved my life a number of times.