rdiff-backup is a very handy utility to effectively create and manage incremental file backups. Most modern GNU/Linux distributions offer rdiff-backup as installable package. Sadly there is no easy to install version available for Windows.
So, here is a short guide:
If you have Cygwin installed, you’re almost ready to go. Make sure to install the following packages with the Cygwin installer:
Devel/ autoconf automake binutils gcc make patchutils Interpreters/ python Web/ wget
Next step is to open the Cygwin console. We have to download librsync because it is a prerequisite for rdiff-backup. To do so, type the following:
# wget http://mesh.dl.sourceforge.net/sourceforge/librsync/librsync-0.9.7.tar.gz
Now we need to unpack the archive and build it:
# tar xzf librsync-0.9.7.tar.gz # cd librsync-0.9.7 # ./configure --prefix=/usr --bindir=/bin --libdir=/lib # make all # make install
Next step is to download rdiff-backup:
# cd .. # wget http://savannah.nongnu.org/download/rdiff-backup/rdiff-backup-1.1.5.tar.gz
Now unpack the archive:
# tar xzf rdiff-backup-1.1.5.tar.gz # cd rdiff-backup-1.1.5
I had a problem with version 1.1.0-1.1.5 where rdiff-backup would stop with a stack trace and an uncaught exception while finishing the backup. In this process it’s calling fsync, which is unsupported on Windows. Thus, we need to apply a quick and dirty patch to the file rpath.py before continuing.
# cd rdiff_backup # wget http://www.katastrophos.net/downloads/rpath-fsync.patch # patch < rpath-fsync.patch # cd ..
Type this to install rdiff-backup:
# python setup.py install
If the installation was successful, you can safely delete the directories and files downloaded:
# cd .. # rm rdiff-backup-1.1.5.tar.gz librsync-0.9.7.tar.gz # rm -Rf rdiff-backup-1.1.5 librsync-0.9.7
More information on how to use rdiff-backup can be found here.
Update 1 (January 24th, 2006): Updated to version 1.1.5.