#!/bin/bash # === CONFIG === DATE=$(date +%Y-%m-%d) BACKUP_DIR="/mnt/toshiba_hdd/lxc-backup" RCLONE_REMOTE="b2-crypt" LOG="/var/log/proxmox-backup-$DATE.log" # === STEP 1: Create backup === echo "[$DATE] Starting Proxmox backup..." | tee -a $LOG vzdump --all --compress zstd --dumpdir $BACKUP_DIR --quiet >> $LOG 2>&1 if [ $? -ne 0 ]; then echo "[$DATE] Backup failed. Exiting." | tee -a $LOG exit 1 fi # === STEP 2: Upload to B2 === echo "[$DATE] Uploading to $RCLONE_REMOTE..." | tee -a $LOG rclone copy "$BACKUP_DIR" "$RCLONE_REMOTE:proxmox/$DATE" --progress >> $LOG 2>&1 if [ $? -eq 0 ]; then echo "[$DATE] Upload successful. Deleting local backups..." | tee -a $LOG rm -rf "$BACKUP_DIR"/* else echo "[$DATE] Upload failed. Keeping local backups." | tee -a $LOG exit 2 fi echo "[$DATE] Backup complete." | tee -a $LOG