bufe is a program that lets you specify a few parameters for a backup and then run it easily. It supports mirrors using rsync, incremental backups using rdup, and a disk-based incremental backup that uses rync’s hard-linking feature.

Bufe is a major reason that my data is backed up — it’s so easy to use on a day-to-day basis that the job actually gets done.

Download bufe Download current



Usage: bufe {-l | backup_name}

bufe -l lists all the backups defined in ~/.config/bufe/bufe.conf.

bufe backup_name runs the named backup defined in ~/.config/bufe/bufe.conf.

type = mirror
source = /path/to/original/
destination = /path/to/mirror
preserve = True

A mirror backup runs rsync to mirror the source directory to the destination directory. Normal rsync rules about trailing slashes apply. Preserve passes the a option to rsync. If preserve is false, options rltD are passed to rsync instead.

type = incremental
source = /path/to/original
destination = /path/to/backup
tmp = /tmpdir
splitsize = 600M

An incremental backup uses rdup to back up only modified files (based on ctime). The files are split using dirsplit into equal-sized groups if possible, which are then tarred.

Give back

If you find this program useful, give something back.