#!/bin/bash if [ "$1" != "update" ]; then source /opt/idssys/defaults/colors.inc source /opt/idssys/defaults/default.inc source /opt/idssys/pibackup/settings.inc #BackupDir="${MountPoint}/${hostname}" BackupDir=/mnt/veeam-backups/octopi logfile=/opt/idssys/pibackup/logfile echo echo '-----------------------------------------------------------------------' date echo '-----------------------------------------------------------------------' if grep '/dev/nvme0n1' /etc/mtab > /dev/null 2>&1; then dtype=/dev/nvme0n1 elif grep '/dev/mmcblk0' /etc/mtab > /dev/null 2>&1; then dtype=/dev/mmcblk0 fi #[ ! -d "$MountPoint" ] && mkdir -p "$MountPoint" [ ! -d "$BackupDir" ] && mkdir -p "$BackupDir" echo "Starting Backup" #dd if=${dtype} of=${BackupDir}/$(date +%Y-%m-%d).img bs=1M status=progress echo "Backup Complete" #sleep 1m echo "Starting PiShrink" #source /opt/idssys/pibackup/pishrink.sh -az ${BackupDir}/$(date +%Y-%m-%d).img echo echo "PiShrink complete" #sleep 1m echo echo "Removing old backups..." allfiles=`ls -1 ${BackupDir}/*.img.gz` files=(`ls -1 ${BackupDir}/*.img.gz | tail -3`) for i in $allfiles; do keep=0; for a in ${files[@]}; do if [ $i == $a ]; then keep=1;fi; done; if [ $keep == 0 ]; then echo "REMOVE: $i" #rm -rf $i else echo "KEEP : $i" fi done echo echo "Completed" #umount ${MountPoint} fi exit 0