|
|
#!/bin/bash
|
|
|
if [ ! -e $SOURCE ]
|
|
|
then
|
|
|
echo "$SOURCE n'existe pas !"
|
|
|
exit 1
|
|
|
fi
|
|
|
|
|
|
export LADATE=`date +%Y%m%d`
|
|
|
export HIER=`date +%Y%m%d -d "1 day ago"`
|
|
|
|
|
|
export LEJOUR=`date +%d`
|
|
|
export TODELETE=`date +%Y%m%d -d "3 months ago"`
|
|
|
|
|
|
DESTINATION=`basename $SOURCE`
|
|
|
if [ -d $TARGET/$LADATE/$DESTINATION ]
|
|
|
then
|
|
|
echo "ALREADY DONE : $TARGET/$LADATE"
|
|
|
exit 0
|
|
|
fi
|
|
|
|
|
|
if [ ! -d $TARGET/$HIER/$DESTINATION ]
|
|
|
then
|
|
|
# Le backup d'hier n'existe pas
|
|
|
# PC éteint, problème backup, etc.
|
|
|
# On prend le dernier backup comme référence
|
|
|
echo "NOT FOUND : $TARGET/$HIER/$DESTINATION"
|
|
|
LAST_ONE=`ls -tr $TARGET | tail -n 1`
|
|
|
echo $LAST_ONE
|
|
|
if [ ! -d $TARGET/$LAST_ONE/$DESTINATION ]
|
|
|
then
|
|
|
echo "SECOND CHANCE, NOT FOUND : $TARGET/$LAST_ONE/$DESTINATION"
|
|
|
exit 1
|
|
|
fi
|
|
|
mv $TARGET/$LAST_ONE $TARGET/$HIER
|
|
|
ln -s $TARGET/$HIER $TARGET/$LAST_ONE
|
|
|
fi
|
|
|
|
|
|
if [ -d $TARGET/$TODELETE/$DESTINATION ]
|
|
|
then
|
|
|
rm -rf $TARGET/$TODELETE/$DESTINATION
|
|
|
fi
|
|
|
|
|
|
echo $TARGET/$LADATE/$DESTINATION
|
|
|
|
|
|
mkdir -p $TARGET
|
|
|
|
|
|
/usr/bin/rsync -a --no-o --delete --safe-links $EXCLUDED_DIRS --link-dest=$TARGET/$HIER/ $SOURCE $TARGET/$LADATE/
|
|
|
|
|
|
echo "DONE"
|