Files
r_backup/bin/oldies/incremental_backup.sh
2018-09-08 19:01:15 +02:00

50 lines
1.1 KiB
Bash
Executable File

#!/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"