#!/bin/sh
###########################################################################
# rbackup.sh
#
# script to rsync a set of backup directories from HD 1 to HD 2.
#   Important:  Add the directories you wish to backup to the SOURCEDIRS
#               variable, space-delimited.
#		Also, don't forget to cron this script!
#
# (loosely based on http://www.scrounge.org/linux/rsync.html)
# w 6/1/09 horto
###########################################################################

# paths and such 
RSYNC=/ffp/bin/rsync
SOURCEDIRS="/mnt/HD_a2/ffp \
	    /mnt/HD_a2/media/mp3 \
	    /mnt/HD_a2/media/pictures \
	   "
DESTINATION=/mnt/HD_b2/backups/HD_a2
DATE=`date`

# logfile.  keep an eye on the space of it over time.
LOG=/mnt/HD_a2/logs/rbackup.log

# excludes file - Contains wildcard patterns of files to exclude.
# i.e., *~, *.bak, etc.  One "pattern" per line.
# You must create this file.
EXCLUDES=""

# rsync options, for testing
# -v Verbose -vv More verbose. -vvv Even more verbose.
# -a Archive. Mainly propogate file permissions, ownership, timestamp, etc.
# -n Don't do any copying, but display what rsync *would* copy. For testing.
# NOTE: never use -z option, don't want to compress locally 

#OPTS="-van"
OPTS="-va"

if [ ! -d $DESTINATION ] || [ ! -w $DESTINATION ]; then 
  echo "[$DATE] ERROR:  Destination $DESTINATION does not exist or is not writable." >> $LOG
fi

for SOURCE in $SOURCEDIRS; do 
  if [ ! -d $SOURCE ]; then 
    echo "[$DATE] ERROR:  Directory $SOURCE does not exist" >> $LOG
  else 
    echo "" >> $LOG
    echo "[$DATE]" >> $LOG
    echo "Starting rsync of source directory $SOURCE ..." >> $LOG
    $RSYNC $OPTS $SOURCE $DESTINATION >> $LOG 
  fi
done

