July 23, 20205 yr I've got a nice and simple rsync script that runs a daily backup between 2 remote unraid servers. Can't take any credit for it, I just modified the "vm settings backup" script to suit the purpose of backing up some quickbooks company files. What i'm missing is an entry in the script to delete backups older than X number of days. The script runs daily, with each new backup in a date-stamped folder like this "/path/Backups/_23_Jul_2020". Ideally, i'd like the script to delete folders older than 14 days from "/path/Backups/" if possible. I'm open to changing any aspect of my present script to achieve desired results. I've included my modified version of the script below for reference. Thanks! #!/bin/bash #backs up #change the location below to your backup location backuplocation="/mnt/disks/192.168.1.121_Backups/Office/Quickbooks/Manual" # do not alter below this line datestamp="_"`date '+%d_%b_%Y'` dir="$backuplocation"/Backups/"$datestamp" # dont change anything below here if [ ! -d $dir ] ; then echo "making folder for todays date $datestamp" # make the directory as it doesnt exist mkdir -vp $dir else echo "As $dir exists continuing." fi echo "Saving QB Backup Files" rsync -aP --no-o /mnt/disks/CLEMENTSS-IMAC_Quickbooks_2019/Backups/ $dir/Backups/ echo "Saving QB Company Files" rsync -aP --no-o '/mnt/disks/CLEMENTSS-IMAC_Quickbooks_2019/Company Files/' $dir'/Company Files/' chmod -R 777 $dir sleep 5 exit Edited July 23, 20205 yr by Cpt. Chaz
July 23, 20205 yr Author May have solved my own problem, but would love for somebody to double check me. I added "find $dir* -mtime +14 -exec rm -rfv {} \" to the top of the script (to minimize time needed to scan newly added files) #!/bin/bash #backs up #change the location below to your backup location backuplocation="/mnt/disks/192.168.1.121_Backups/Office/Quickbooks/Manual" # do not alter below this line datestamp="_"`date '+%d_%b_%Y'` dir="$backuplocation"/Backups/"$datestamp" # dont change anything below here if [ ! -d $dir ] ; then echo "making folder for todays date $datestamp" # make the directory as it doesnt exist mkdir -vp $dir else echo "As $dir exists continuing." fi echo "Deleting Old Backups" find $dir* -mtime +14 -exec rm -rfv {} \; echo "Saving QB Backup Files" rsync -aP --no-o /mnt/disks/CLEMENTSS-IMAC_Quickbooks_2019/Backups/ $dir/Backups/ echo "Saving QB Company Files" rsync -aP --no-o '/mnt/disks/CLEMENTSS-IMAC_Quickbooks_2019/Company Files/' $dir'/Company Files/' chmod -R 777 $dir sleep 5 exit
Archived
This topic is now archived and is closed to further replies.