You are here

Linux Backup Solutions

In an earlier post, I spoke about the need for backup. However, I hardly spoke about the available backup solutions in Linux and just mentioned about a software that I no longer use. In this article, I will primarily focus on some of the popular linux backup solutions.

Factors to consider

There are many questions one should ask himself before deciding on a backup solution. Some of them being:

  • What is the scale of the backup? Is it just my system or is it multiple systems in the network?
  • Do I want to backup to hark disk or cloud (S3, rackspace) or tapes or CD/DVD?
  • What protocol should be used for backing up over network?
  • Do I want the backed up archives to be automatically split into fixed sizes? (for example for writing to CD/DVD)
  • While using windows, should the permissions of files be backed up as well?
  • For network based backup, should it be a pull model or push model i.e. should the backup be initiated from the backup server or from the machine being backed up?
  • Do I want the backups to be stored opaquely (archives) or transparently (plain files)? Note that storing in transparent format (i.e. as plain files) has its limitations that compression and encryption cannot be supported
  • What is the backup frequency and policy that I want to use?
  • Is it feasible to automatically purge old backup data?

Graphical Backup Software for Desktop PCs

There are three popular graphical backup software : Déjà Dup (which is actually a graphical frontend to duplicity), Back In Time and luckyBackup. All of them are good but there are features in one which is missing in other. Therefore it became impossible for me to decide on which was the best. Below is a comparison chart of all the three software. I leave it for you to decide which one do you want to use.

  Déjà Dup Back In Time luckyBackup
Description Déjà Dup is a simple backup tool. It hides the complexity of backing up the Right Way (encrypted, off-site, and regular) and uses duplicity as the backend. Back In Time is a simple backup tool for Linux inspired from “flyback project” and “TimeVault”. The backup is done by taking snapshots of a specified set of directories. luckyBackup is an application for data back-up and synchronization powered by the rsync tool. It is simple to use, fast (transfers over only changes made and not all data), safe (keeps your data safe by checking all declared directories before proceeding in any data manipulation), reliable and fully customizable
Scheduling Method Daemon (deja-dup-monitor) started upon user desktop login. Can also be scheduled using Cron. Cron Cron
Highest Backup Frequency Daily (can be configured for hourly by following this tip) 5 mins Cron compatible
Visual notification during backup System Tray None System Tray
Simulated Run (for backup and restore) No No Yes
Backup Locations S3, FTP, SSH, Webdav, Windows Share, Custom Location, Local Folder SSH, Local Folder SSH
Restore individual files Yes Yes No
Backup data format Opaque All revisions are stored transparently Only the most recent backup is stored transparently
File Browser Integration Out-of-the box integration with Nautius (GNOME) and can be integrated with Dolphin (KDE) as well No No
Support for multiple profiles No Yes Yes
UI Ease of Use Very Simple Easy Average
Encrypted Backups Yes No No
Old Backups Purge Policy Based on time Based on time Based on number of snapshots

As you can see, it is pretty difficult to select one clear winner as the features provided by one are not found in the other. I encourage you to take the above comparison table as a starter and evaluate each of the products before deciding on one.

Command Line Backup Software

rdiff-backup - rdiff-backup backs up one directory to another, possibly over a network. The target directory ends up a copy of the source directory, but extra reverse diffs are stored in a special subdirectory of that target directory, so you can still recover files lost some time ago. The idea is to combine the best features of a mirror and an incremental backup. rdiff-backup also preserves subdirectories, hard links, dev files, permissions, uid/gid ownership, modification times, extended attributes, acls, and resource forks. Also, rdiff-backup can operate in a bandwidth efficient manner over a pipe, like rsync. Thus you can use rdiff-backup and ssh to securely back a hard drive up to a remote location, and only the differences will be transmitted. Finally, rdiff-backup is easy to use and settings have sensical defaults. Check out its complete set of features.

duplicity - Duplicity backs directories by producing encrypted tar-format volumes and uploading them to a remote or local file server. Because duplicity uses librsync, the incremental archives are space efficient and only record the parts of files that have changed since the last backup. Because duplicity uses GnuPG to encrypt and/or sign these archives, they will be safe from spying and/or modification by the server. Check out its complete set of features.

rsnapshot - rsnapshot is a filesystem snapshot utility for making backups of local and remote systems. Using rsync and hard links, it is possible to keep multiple, full backups instantly available. The disk space required is just a little more than the space of one full backup, plus incrementals. Depending on your configuration, it is quite possible to set up in just a few minutes. Files can be restored by the users who own them, without the root user getting involved. There are no tapes to change, so once it's set up, your backups can happen automatically untouched by human hands. And because rsnapshot only keeps a fixed (but configurable) number of snapshots, the amount of disk space used will not continuously grow.

DAR - Disk ARchive - dar is a shell command that backs up directory trees and files, taking care of hard links, Extended Attributes, sparse files, MacOS's file forks, any inode type (including Solaris Door inodes), etc. From a filesystem, dar creates an archive, which may be split in a set of files (called slices) which size is user defined. Dar archives are suitable to be stored on floppy, CD, DVD, usb key, hard disks, and since release 2.4.0 to tapes too. Dar can perform full backup, incremental backup, differential backup and decremental backup. Dar is able to be run on a live filesystem. Dar can be used through ssh for remote backups. Check out its complete set of features. Combined with SaraB, it is possible to schedule and rotate backups on random-access media. SaraB supports the Towers of Hanoi, Grandfather-Father-Son, or any custom backup rotation strategy. It is easy to use and highly configurable.

Box Backup (supports continuous backup) - (As mentioned in wikipedia) Box Backup is a client-server application in which a client sends data to the server for storage. The server provides management of client via certificates, storage quotas, and data retention. Together, a unique and robust solution is created that scales allowing clients with low-bandwidth connections to effectively perform reliable backups. Box Backup is ideal for backing up laptops and computers with intermittent or low-bandwidth connections, because it is capable of continuous data protection in the background, starting automatically when an internet connection is present, and recovering gracefully and efficiently from connection failures. Box Backup uses a modified version of the Rsync algorithm, that works with encrypted blocks. This allows it to store data on the server in a form that the server operator cannot read, while still uploading only changed portions of data files.

Enterprise Grade Network Backup Software

My personal favourite when it comes to enterprise grade backup software is BackupPC. The most important reasons being:

  • Disk-based backup medium (and not tape based)
  • Simple to setup (unlike most other enterprise grade backup solutions)
  • Easy to use web interface where I can manage backups, restore from backups and view status of all backups (missing with most other solutions)
  • Compression and De-duplication
  • Password protection of archives. See http://akutz.wordpress.com/2008/12/23/creating-archives-with-backuppc-an...
  • Auto-splitting to fit on CDs/DVDs

Other popular software considered were Amanda (too complicated for small networks and primary backup medium is tapes) and Bacula (almost ideal solution but is slightly complicated to setup. Also provides native client for windows implying backup and restore preserves file permissions as they are).

References:

Category: 

Add new comment