Update nodemgmt-scripts.sh
This commit is contained in:
@@ -578,52 +578,59 @@ UPDATE_DYNDNS(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
BACKUP_OFFSITEPFSENSE(){
|
BACKUP_OFFSITEPFSENSE(){
|
||||||
BAKFOLDER=/opt/Offsite-pfSense_Backups
|
OFFSITE_PFSENSE_IP='10.2.1.1'
|
||||||
newBAKFOLDER=${BAKFOLDER}/`date +%Y%m%d-%H%M%S`
|
if [ "$(CHECK_HOST ${OFFSITE_PFSENSE_IP})" != "false" ]; then
|
||||||
mkdir ${newBAKFOLDER}
|
BAKFOLDER=/mnt/Veeam-pfSense-Backups
|
||||||
DOM='01'
|
newBAKFOLDER=${BAKFOLDER}/`date +%Y%m%d-%H%M%S`
|
||||||
DOW='1'
|
mkdir ${newBAKFOLDER}
|
||||||
DailyBackupsToKeep=14
|
DOM='01'
|
||||||
WeeklyBackupsToKeep=12
|
DOW='1'
|
||||||
MonthlyBackupsToKeep=24
|
DailyBackupsToKeep=14
|
||||||
|
WeeklyBackupsToKeep=12
|
||||||
|
MonthlyBackupsToKeep=24
|
||||||
|
|
||||||
ssh root@10.2.1.1 tar -c -f /cf/conf/conf_backup.tar.gz /cf/conf
|
ssh root@${OFFSITE_PFSENSE_IP} tar -c -f /cf/conf/conf_backup.tar.gz /cf/conf
|
||||||
scp root@10.2.1.1:/cf/conf/conf* ${newBAKFOLDER}/
|
scp root@${OFFSITE_PFSENSE_IP}:/cf/conf/conf* ${newBAKFOLDER}/
|
||||||
ssh root@10.2.1.1 rm -f /cf/conf/conf_backup.tar.gz
|
ssh root@${OFFSITE_PFSENSE_IP} rm -f /cf/conf/conf_backup.tar.gz
|
||||||
|
|
||||||
if [ "$(date +%d)" == "${DOM}" ] && [ "$(date +%u)" == "${DOW}" ]; then
|
if [ "$(date +%d)" == "${DOM}" ] && [ "$(date +%u)" == "${DOW}" ]; then
|
||||||
mv ${newBAKFOLDER} "${newBAKFOLDER}-M"
|
mv ${newBAKFOLDER} "${newBAKFOLDER}-M"
|
||||||
ln -s "${newBAKFOLDER}-M" "${newBAKFOLDER}-W"
|
ln -s "${newBAKFOLDER}-M" "${newBAKFOLDER}-W"
|
||||||
ln -s "${newBAKFOLDER}-M" "${newBAKFOLDER}-D"
|
ln -s "${newBAKFOLDER}-M" "${newBAKFOLDER}-D"
|
||||||
elif [ "$(date +%d)" == "${DOM}" ]; then
|
elif [ "$(date +%d)" == "${DOM}" ]; then
|
||||||
mv ${newBAKFOLDER} "${newBAKFOLDER}-M"
|
mv ${newBAKFOLDER} "${newBAKFOLDER}-M"
|
||||||
ln -s "${newBAKFOLDER}-M" "${newBAKFOLDER}-D"
|
ln -s "${newBAKFOLDER}-M" "${newBAKFOLDER}-D"
|
||||||
elif [ "$(date +%u)" == "${DOW}" ]; then
|
elif [ "$(date +%u)" == "${DOW}" ]; then
|
||||||
mv ${newBAKFOLDER} "${newBAKFOLDER}-W"
|
mv ${newBAKFOLDER} "${newBAKFOLDER}-W"
|
||||||
ln -s "${newBAKFOLDER}-W" "${newBAKFOLDER}-D"
|
ln -s "${newBAKFOLDER}-W" "${newBAKFOLDER}-D"
|
||||||
else
|
else
|
||||||
mv ${newBAKFOLDER} "${newBAKFOLDER}-D"
|
mv ${newBAKFOLDER} "${newBAKFOLDER}-D"
|
||||||
fi
|
|
||||||
|
|
||||||
dailyfilestokeep=(`ls -d ${BAKFOLDER}/*-D 2> /dev/null | tail -${DailyBackupsToKeep}`)
|
|
||||||
weeklyfilestokeep=(`ls -d ${BAKFOLDER}/*-W 2> /dev/null | tail -${WeeklyBackupsToKeep}`)
|
|
||||||
monthlyfilestokeep=(`ls -d ${BAKFOLDER}/*-M 2> /dev/null | tail -${MonthlyBackupsToKeep}`)
|
|
||||||
for i in $(ls -d ${BAKFOLDER}/*); do keep=0
|
|
||||||
if [[ "${i}" == *"-D"* ]]; then
|
|
||||||
filestokeep=${dailyfilestokeep[@]}
|
|
||||||
elif [[ "${i}" == *"-W"* ]]; then
|
|
||||||
filestokeep=${weeklyfilestokeep[@]}
|
|
||||||
elif [[ "${i}" == *"-M"* ]]; then
|
|
||||||
filestokeep=${monthlyfilestokeep[@]}
|
|
||||||
fi
|
fi
|
||||||
for a in ${filestokeep}; do
|
|
||||||
if [ "${i}" == "${a}" ]; then
|
|
||||||
keep=1; break
|
|
||||||
fi
|
|
||||||
done;
|
|
||||||
[ $keep == 0 ] && rm -rf ${i}
|
|
||||||
done
|
|
||||||
|
|
||||||
|
dailyfilestokeep=(`ls -d ${BAKFOLDER}/*-D 2> /dev/null | tail -${DailyBackupsToKeep}`)
|
||||||
|
weeklyfilestokeep=(`ls -d ${BAKFOLDER}/*-W 2> /dev/null | tail -${WeeklyBackupsToKeep}`)
|
||||||
|
monthlyfilestokeep=(`ls -d ${BAKFOLDER}/*-M 2> /dev/null | tail -${MonthlyBackupsToKeep}`)
|
||||||
|
for folder in $(ls -d ${BAKFOLDER}/*); do
|
||||||
|
if [[ "${folder}" == *"-D"* ]]; then
|
||||||
|
filestokeep=${dailyfilestokeep[@]}
|
||||||
|
elif [[ "${folder}" == *"-W"* ]]; then
|
||||||
|
filestokeep=${weeklyfilestokeep[@]}
|
||||||
|
elif [[ "${folder}" == *"-M"* ]]; then
|
||||||
|
filestokeep=${monthlyfilestokeep[@]}
|
||||||
|
fi
|
||||||
|
keep=0
|
||||||
|
for file in ${filestokeep}; do
|
||||||
|
if [ "${folder}" == "${file}" ]; then
|
||||||
|
keep=1; break
|
||||||
|
fi
|
||||||
|
done;
|
||||||
|
# [ $keep == 0 ] && rm -rf ${folder}
|
||||||
|
# [ $keep == 0 ] && ssh backup@10.10.1.60 rmdir "D:\Offsite-pfSense_Backups\${newBAKFOLDER}"
|
||||||
|
[ $keep == 0 ] && echo "DELETE FOLDER: ${folder}"
|
||||||
|
done
|
||||||
|
else
|
||||||
|
SENDNOTICE "Offsite pfSense Backup Failed" "Could not contact 'pfSense @ ${OFFSITE_PFSENSE_IP}' for backup"
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
RUN_COMMAND(){
|
RUN_COMMAND(){
|
||||||
|
|||||||
Reference in New Issue
Block a user