Within this document, encrypted and on-line are used in very specific ways to describe backup systems.
Only backup systems which are both encrypted and on-line are compared in depth. Other systems have brief notes at the end of this document.
Please email me with any systems I have missed, or corrections to my analysis. This is not intended to promote Box Backup, but as an objective comparison to allow you to decide which system to adopt.
| Box Backup | duplicity | hdup | |
| Development status | stable, under development, not feature complete | "not stable yet" (details) | stable, maintainance only |
| Changes only when uploading new versions of existing files (like rsync) | yes | yes | no |
| Connects to server using | TLS (SSL) | ssh/scp, local file access, rsync, ftp | ssh, local files |
| Authentication | SSL certificates (client and server) | Traditional file storage accounts on server (eg unix username, virtual FTP etc) | Traditional file storage accounts on server (eg unix username, virtual FTP etc) |
| Dependencies | OpenSSL | Python installation, librsync, GnuPG, remote shell | ssh, mcrypt/GPG, GNU tar |
| Signed data storage | Implicit | Explicit with GnuPG | Implicit/Explicit with GnuPG |
| Scheduling | Self-contained with randomised element to avoid cyclic server loading, or cron job | cron job | cron job |
| Continuous backup | Yes -- backs up files a configured time after being changed, or... No -- in snapshot mode |
No -- takes a snapshot of the filesystem when it is run | No -- takes a snapshot of the filesystem when it is run |
| Handling of old versions and deleted files | Old and deleted files remain on server until store reaches a set limit, after which they are removed. No particular limits on availiability apart from this size limit. | Full and incremental backups, deletion by user scripts | Monthly full backups, weekly and daily incremental, deletion of archives by user scripts |
| Resources used on client | Few Mb of memory, very small amount of disc space | Status and checksums for all files backed up, plus potentially large temporary files. (however, disc space is cheap, so this is not an issue unless the clients are older machines with small hard drives) | Minimal (latest versions can stream archives directly to server) |
| Resources used on server | Disc space | Disc space, remote shell server, UNIX accounts | Disc space, ssh, UNIX accounts |
| Redundant storage on server | Optional built in userland RAID storage | Relies on OS to provide RAID | Relies on OS to provide RAID |
| Restore | FTP-like client, or simple command to restore entire directories | Simple command to restore entire directories, fetch files or directories by name. | Simple command to restore entire directories, fetch files or directories by name, will fetch entire archives for single files. |
| Encrypted? | On-line? | Network | Notes | |
| Amanda | no | no | LAN | The classic network backup system |
| Bacula | no | yes | LAN | Comprehensive job control. Stores lists of backed up files in a database for faster retrieval. Can backup to disk as well as tape. Supports encrypted transfer, but not storage. |
| rdiff-backup | no | yes | Remote | "The idea is to combine the best features of a mirror and an incremental backup." |
| rsnapshot | no | yes | Remote | Perl script. Pulls files over ssh from the source server to the backup server. Creates efficient snapshots of the source filesystem. |
| rsync | no | yes | Remote | Requires extra scripts for automatic scheduling and old version archival. May be less efficient than Box Backup, as it needs to check for existence of every file on the remote side, whereas Box Backup keeps an efficient record. |
| Mondo Rescue | no | no | n/a | Backup to local media, aimed at full system recovery. |
"Network" is marked as LAN if the system uses so much bandwidth it can only be used on a LAN, Remote if it uses bandwidth conservation techniques which make it suitable for use over an internet connection.
© Ben Summers, 2003, 2004