X-Git-Url: https://hackdaworld.org/gitweb/?a=blobdiff_plain;f=bin%2Fbackup;h=945667cd6db9a97ea0e34efb381523ee56206f0b;hb=9405567ffe04ed5f4d5fef9b8666bd2360860751;hp=e843da37fdd2ef425fab7b62c33e6367431bc90a;hpb=4105b8683216a18182588e0ea657d50f80071bd9;p=outofuni%2Fbackup.git diff --git a/bin/backup b/bin/backup index e843da3..945667c 100755 --- a/bin/backup +++ b/bin/backup @@ -107,10 +107,8 @@ for pb in $backupdir/[0-9]*; do else if [ ! -z "$lpb" ]; then rm -rf $cbd - mv $lpb $cbd + cp -r $lpb $cbd log "starting backup $today from $lpb ..." - else - log starting backup from scratch ... fi fi fi @@ -144,16 +142,27 @@ else log backup $bdd found completed ... fi +[ -z "$replicas" ] && replicas=3 +[ -z "$oldest" ] && oldest=0 + cob=`echo $ob | wc -w` if [ $cob -gt $replicas ]; then ((numdel=cob-replicas)) todel="`echo $ob | cut -d ' ' -f 1-${numdel}`" - log to delete: $todel - #for dirdel in $todel; do - # bdd=`basename $dirdel` - # rm -r $dirdel - # rm $backupdir/$bdd - #done + for dirdel in $todel; do + past=`basename $dirdel` + ns=`date --date="$today" +%s` + ps=`date --date="$past" +%s` + ((delta=(ns-ps)/86400)) + if [ $delta -gt $oldest ]; then + log "deleting $dirdel ($delta days old) ..." + bdd=`basename $dirdel` + rm -r $dirdel + rm $backupdir/.$bdd + else + log "keeping $dirdel ($delta days old) ..." + fi + done fi exit 0