#!/usr/local/bin/bash --posix
PATH="/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/sbin:/usr/local/bin"
#set -x
scriptname=$(basename $0)
case $scriptname in
"snap_on.sh")
FILES=/usr/local/script/syncronized_files.txt
echo `date` : starting local syncronization
for i in `cat $FILES |grep -v ^#`
do
/usr/local/bin/rsync --timeout=60 -av --update $i /mon/backup
done
if [ -e /mon/.snap/snap1 -o -e /dev/md1 ] ; then
echo "Error: I can't create filesystem snapshot!"
exit 99
elif [ -d /mnt/rrdtool_snap/rrdtool ] ; then
echo "Error: I can't mount filesystem snapshot!"
exit 98
fi
mount -u -o snapshot /mon/.snap/snap1 /mon
mdconfig -a -t vnode -f /mon/.snap/snap1 -u 1
mount -r /dev/md1 /mnt/rrdtool_snap
echo "=====Snapshot successfully created and mounted===="
;;
"snap_off.sh")
if [ ! -d /mnt/rrdtool_snap/rrdtool ] ; then
echo "Error: I can't umount filesystem snapshot!"
exit 97
elif [ ! -e /dev/md1 -o ! -e /mon/.snap/snap1 ] ; then
echo "Error: I cant' remove filesystem snapshot!"
exit 96
fi
umount /mnt/rrdtool_snap
mdconfig -d -u 1
rm -f /mon/.snap/snap1
echo "====Snapshot succesfully umounted and removed===="
;;
esac