Backup with Affa and FreeDup

From SME Server
Revision as of 11:48, 2 July 2008 by Giskaard (talk | contribs)
Jump to navigationJump to search

Purpose

There are situations in backup process that Affa (with or without Rsync) can't handle well.

Imagine backing up user files in a company where documents are distributed on regular basis. It is very likely that all of your users will have a copy of the same file in their documents.

Freedup walks through the file trees (directories) you specify. When it finds two identical files on the same device, it hard links them together. In this case two or more files still exist in their respective directories, but only one copy of the data is stored on disk; both directory entries point to the same data blocks.

Rsync partially does this, but it won't search for identical files within your backup. This software does just that. In my case I saved ONE THIRD of the backup diskspace on one single backup alone. And what is more, FreeDup found more identical files within backups' trees themselves, hence correcting Rsync and saving me terabytes of space.

Without FreeDup's hardlinks my current off-site backup would be 3.4TB, but instead it is only 240MB. That is 12 backups in total - 3x monthly, 4x weekly and 5x daily backups + the current backup running.

This document describes the installation and configuration options of the freedup in Affa's post job for the purpose to reclaim free space on your disk occupied by duplicate files.

Installation

To install FreeDup, visit project's homepage and download the latest rpm and install:

http://software.neuper.de/freedup/download.html

CentOS or RedHat binary works fine.

Usage

To use FreeDup with Affa, first install and setup latest version of Affa.

Then add this

freedup -Tv <insert your directory with backups>

into

/usr/lib/affa/postJob.sh

Command line options are beyond the scope of this document, in my case I only use -T to preserve timestamps and -v for some verbosity.

Various Tests

To see how much your backup occupies, you may find these commands below useful.

Find out real, physical space occupied by your backup:

du -sh <insert your directory with backups>

Find out the space occupied by your backup if you weren't using hardlinks (counts sizes many times if hard linked):

du -shl <insert your directory with backups>

Find out what files are hardlinked:

find <insert your directory with backups> -xdev -type f -links +1 -printf '%i %p\n' | sort -n > links.txt

NOTE!

Please be aware that once you launch FreeDup, it can take several hours to complete, depending on the size of backups as it its algorithm is making sure that files that are to be hardlinked are the same. My backups

Also, make sure you have the latest version of Affa, at the time of writing this document, it is this one:

http://neddix.com/sme7/smeserver-affa-1.0.0-2.el4.sme.noarch.rpm