Rotation de sauvegarde et sauvegarde TAR.GZ

Cette source SH permet de faire une rotation de sauvegarde en créant des archives TAR.GZ de répertoire . Le principe est de créer un FLAG (drapeau) qui permettra au script de commencer son processus de sauvegarde ,  puis de supprimer le répertoire FLAG .


repertoire=/home/sauvegardes/backup_flag

if cd « $repertoire » 2>/dev/null; then   # « 2>/dev/null » cache les messages d’erreur
echo « Rotation effective »
KEEP=7
DIR=/home/sauvegardes/archives
DIRS1=/home/sauvegardes/rep1
#DIRS2=/home/sauvegardes/rep2
#DIRS3=/home/sauvegardes/rep3
#DIRS4=/home/sauvegardes/rep4
#DIRS5=/home/sauvegardes/rep5
# calcule date du jour
DATE=`date –date=yesterday « +%Y-%m-%d »`
mkdir $DIR/$DATE
# supprime les vieux repertoires
ls -d $DIR/2* | sort | head –lines=-$KEEP | xargs rm -rf
# copie (hard links) les données
cp -R $DIRS1 $DIR/$DATE
#cp -R $DIRS2 $DIR/$DATE
#cp -R $DIRS3 $DIR/$DATE
#cp -R $DIRS4 $DIR/$DATE
#cp -R $DIRS5 $DIR/$DATE
# supprime le fichier flag
rm -R /home/sauvegardes/backup_flag

else
echo « Je ne peux pas aller dans $repertoire. »
fi