Non so se possa esserti utile, ma io faccio un backup normale due volte al mese e uno differenziale tutti gli altri giorni per alcune directories.
Per farlo utilizzo dar e cron.
Esattamente per il primo ho scritto due eseguibili come questi:
Backup normale
codice:
#!/bin/sh
DIR=/BackUps/backups
mv -f ${DIR}/mysql/*.* ${DIR}/mysql/temporanea
FILE=${DIR}/mysql/`/bin/date -I`_var_lib_mysql_directory
# Commands
dar -m 256 -y -s 600M -D -R /Dati/mario/mysql -c $FILE -Z "*.gz" -Z "*.bz2" -Z "*.zip" -Z "*.png" -Z "*.jpg" > /dev/null
dar -t $FILE > /dev/null
rm ${DIR}/mysql/temporanea/*.*
Backup differenziale
codice:
#!/bin/sh
DIR=/BackUps/backups
# Commands
FILE=${DIR}/mysql/`/bin/date -I`_var_lib_mysql_directory_diff
PREV=`/bin/ls $DIR/mysql/*.dar|/usr/bin/tail -n 1|/usr/bin/awk -F '.' '{print $1;}'`
# Commands
dar -m 256 -y -s 600M -D -R /Dati/mario/mysql -c $FILE -Z "*.gz" -Z "*.bz2" -Z "*.zip" -Z "*.png" -Z "*.jpg" -A $PREV > /dev/null
dar -t $FILE > /dev/null
e per cron:
codice:
# dar_backup
0 19 1,15 * * root /var/lib/Backups/dar_backup
# dar_backup_diff
0 19 2,3,4,5,6,7,8,9,10,11,12,13,14,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31 * * root /var/lib/Backups/dar_backup_diff
mcz