Debian Sarge rsync package updated

I’ve been using rsnapshot for quite a while now, as a means to make daily, weekly en monthly backups on disk, for the cost of only slightly more disc space than the full 100% of my data. Which is possible thanks to rsnapshot extensively using hard linking instead of plainly copying files. So the same file takes the same amount of disc space whether it is archived 1 time or in 7 daily + 4 weekly + 12 yearly monthly = 21 archives.

Read more on rsnapshot on its homepage: rsnapshot was originally based on an article called Easy Automated Snapshot-Style Backups with Linux and Rsync, by Mike Rubel. If you think this is just another mysterious, dark-alley program, think again. This functionality is paid big bucks with commercial vendors, and rsnapshot is actively being used, even in bigger companies.

Performing differential, secure and remote backups is also possible, using rsync over ssh for transport.

Now rsync had a bug, where the --delete option had no effect. Quite annoying, given the fact that rsnapshot uses that option so that files, deleted after your previous backup, get deleted in the new backup archive you currently perform. Backups still roll, and you data is safe, but in directories where you e.g. have a daily dump of you database – with a filename containing the date – the old files never get deleted, and you turn up with all the dumps linked in every archive, instead of having just right dump in the right archive.

Luckily, as usual with Open Source, somebody analyses the problem and posts a patch. I filed bug 317418 in the Debian Bug Tracker with all that info.

It gets slightly more annoying when you realize that in Debian, this kind of bug is not considered critical, and never will be updated in Debian Stable. Very annoying if you standardize on Debian Stable and need the packages with their original functionalities. Luckily for me, in this case, solving the problem isn’t that difficult, as the patch is very tiny and modifying the source code is very simple, even without any C knowledge. It took some time to find out how to customize a Debian package, but thanks to some very helpfull people in the community, it turned out well.

If you experience the same problem, the updated package rsync_2.6.4-6.svg1_i386.deb can be found amongst my downloads, together with all the source. I hope this package was built like it should. If you have extensive knowledge on Debian packaging, as a Debian Devekoper or not, I’d be glad to hear your feedback, as this stuff is quite new for me.