adding the Incremental Backup using Rsync.
In a nutshell heres the overview of the scenario :
1) We have a bunch of users on a Mail Server, called mail1,which runs Red Hat Enterprise 3.
we need to backup the daily mails of users stored in /var/qmail/users/
2) We have a second linux machine, backup, with good IP connectivity to mail1.
3) Backups are desired every day during the night when the load is low.
4) The backups should be incremental - minimising storage requirements by only keeping 'diffs' from one backup to the next.
Rsync executed in mail1 as follows :
/usr/local/bin/rsync -a --update --delete /var/qmail/users/ backup:/backups/home.0
This causes /backups/home.0 on backup to be updated to reflect the set of directories and files under /var/qmail/users/ on mail1. The update process will recurse down each branch of the directory tree under /var/qmail/users/ on mail1and:
- delete entries under backup:/backups/home.0 that no longer exist under mail1:/var//qmail/users/
- add entries to backup:/backups/home.0 that have appeared under mail1:/var/qmail/users/
- update entries in backup:/backups/home.0 that have changed under mail1:/var/qmail/users
Note : Rysnc needs root permission to execute the above command.
add the rsync command to cron jobs
#crontab -e
15 3 * * * root /bin/csh /root/bin/updateusers.sh daily
In updateusers.sh have added the rync line that I have mentioned above.
The above command will be excuted a 03:15 am in the night.
Since storing your backup on a Network server its advisable to have a SSH-keygen so that it does not ask for a password while backing up.
Look here for password less logins.