#!/bin/bash

# ### Keeps a mirror of a local directory on the remote and diff (just deleted/changed files) backups in a backup directory on the remote ###
# dave at dalrun.com Jul '07

# date (yy-mm-dd)
DAY=`date +%y-%m-%d`
# # date (yyyy-mm-dd)
# DAY=`date +%Y-%m-%d`

# remote server (source/pull or destination/push, see below)
# SERVER=host.domain.tld or IP address or
# SERVER=user@host.domain.tld or IP address
SERVER=192.168.1.4

# ### no leading or trailing slashes
# root directory on source
SRCROOT=var/www/html

# root directory on destination
DESTROOT=var/www/html

# backup directory is a sub directory of DESTROOT
# use --backup-dir=/$BACKUP... and full path if its not
BACKUP=backup

# directorys to be backed up (subdirectories of rootdirs)
DIRI=DWS
DIRII=dalrun
# DIRIII=
# DIRIIII=

# ### push - send directories on this machine to backup server
# backups go in BACKUP/DAY, mirror goes in DESTROOT/DIR
rsync -abv -e ssh --delete --backup-dir=/$DESTROOT/$BACKUP/$DAY/$DIRI /$SRCROOT/$DIRI/ $SERVER:/$DESTROOT/$DIRI
rsync -abv -e ssh --delete --backup-dir=/$DESTROOT/$BACKUP/$DAY/$DIRII /$SRCROOT/$DIRII/ $SERVER:/$DESTROOT/$DIRII
# rsync -abv -e ssh --delete --backup-dir=/$DESTROOT/$BACKUP/$DAY/$DIRIII /$SRCROOT/$DIRIII/ $SERVER:/$DESTROOT/$DIRIII
# rsync -abv -e ssh --delete --backup-dir=/$DESTROOT/$BACKUP/$DAY/$DIRIIII /$SRCROOT/$DIRIIII/ $SERVER:/$DESTROOT/$DIRIIII

# ### pull - backup remote directories to this machine
# rsync -abv -e ssh --delete --backup-dir=/$DESTROOT/$BACKUP/$DAY/$DIRI $SERVER:/$SRCROOT/$DIRI/ /$DESTROOT/$DIRI
# rsync -abv -e ssh --delete --backup-dir=/$DESTROOT/$BACKUP/$DAY/$DIRII $SERVER:/$SRCROOT/$DIRII/ /$DESTROOT/$DIRII
# rsync -abv -e ssh --delete --backup-dir=/$DESTROOT/$BACKUP/$DAY/$DIRIII $SERVER:/$SRCROOT/$DIRIII/ /$DESTROOT/$DIRIII
# rsync -abv -e ssh --delete --backup-dir=/$DESTROOT/$BACKUP/$DAY/$DIRIIII $SERVER:/$SRCROOT/$DIRIIII/ /$DESTROOT/$DIRIIII
