DAR
source
répertoire
mkdir -p /var/partage/admin_scripts/backup_scripts mkdir -p /var/partage/backups
principe
au depart pour une référence. (selon la configuration du fichier common.dcf)
/var/partage/admin_scripts/backup_scripts/backup_initial.sh
#!/bin/sh DIR=/var/partage/backups ADMINSCRIPTSDIR=`dirname $0` FILE=${DIR}/`/bin/date -I`_data FILEORIGINE=$DIR/*_data.*.dar date if [ ! -f $FILEORIGINE ]; then if [ $? -ne 0 ]; then echo "Backup full: can not create month backup dir ($DIR)" exit 2 else # Sauvegarde les dossiers et les fichiers decrits dans le fichier de configuration /usr/bin/dar -B ${ADMINSCRIPTSDIR}/common.dcf -c $FILE > /dev/null # Teste la sauvegarde /usr/bin/dar -t $FILE > /dev/null if [ $? -ne 0 ]; then echo "Backup full: Archive created but test FAILED" exit 3 fi date echo "dar finished" exit 0 fi fi
puis en cron 1 fois par jour
/var/partage/admin_scripts/backup_scripts/backup_diff.sh
#!/bin/bash EMAILTO="g.stolaric@gwinfo.fr" DIR=/var/partage/backups ADMINSCRIPTSDIR=`dirname $0` MONTHDIR=${DIR} FILE=${DIR}/`/bin/date -I`_diff PREV=`/bin/ls -tr1 $DIR/*.dar | tail -n 1` MESSAGE="" MESSAGE=${MESSAGE}`date` MESSAGE=${MESSAGE}"\n" MESSAGE=${MESSAGE}$FILE"\n" #date # Sauvegarde les dossiers et les fichiers decrits dans le fichier de configuration /usr/bin/dar -B ${ADMINSCRIPTSDIR}/common.dcf -c $FILE -A ${PREV%%.*} > /dev/null # Teste la sauvegarde /usr/bin/dar -t $FILE > /dev/null if [ $? -ne 0 ]; then MESSAGE=${MESSAGE}"Backup diff: Archive created but test FAILED" MESSAGE=${MESSAGE}"\n" exit 3 fi MESSAGE=${MESSAGE}`date` MESSAGE=${MESSAGE}"\n" MESSAGE=${MESSAGE}"dar finished" echo -e $MESSAGE | mail -s "message backup différencielle" $EMAILTO exit 0