Cpt. Chaz Posted July 23, 2020 Posted July 23, 2020 (edited) 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, 2020 by Cpt. Chaz Quote
Cpt. Chaz Posted July 23, 2020 Author Posted July 23, 2020 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 Quote
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.