From 75a8c782bbea13f9b25693b7c65c1d8e0fa04b98 Mon Sep 17 00:00:00 2001 From: Peter Wood Date: Thu, 13 Mar 2025 15:44:00 -0400 Subject: [PATCH] feat: enhance backup-media.sh with logging and additional backups for jellyseerr --- backup-media.sh | 46 +++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 41 insertions(+), 5 deletions(-) diff --git a/backup-media.sh b/backup-media.sh index f3cb067..8dc4dc7 100755 --- a/backup-media.sh +++ b/backup-media.sh @@ -1,14 +1,50 @@ #!/bin/bash +# Create log directory if it doesn't exist +mkdir -p /mnt/share/media/backups/logs + +# Log file with date and time +LOG_FILE="/mnt/share/media/backups/logs/backup_log_$(date +%Y%m%d_%H%M%S).log" + +# Function to log file details +log_file_details() { + local src=$1 + local dest=$2 + local size=$(du -sh "$dest" | cut -f1) + echo "Source: $src" >> "$LOG_FILE" + echo "Destination: $dest" >> "$LOG_FILE" + echo "Size: $size" >> "$LOG_FILE" + echo "------------------------" >> "$LOG_FILE" +} + +# Backup and log details docker cp sonarr:/config/Backups/scheduled /mnt/share/media/backups/sonarr/ +log_file_details "sonarr:/config/Backups/scheduled" "/mnt/share/media/backups/sonarr/" + docker cp radarr:/config/Backups/scheduled /mnt/share/media/backups/radarr/ -docker cp prowlarr:/config/Backups/scheduled /mnt/share/media/backups/prowlarr -docker cp audiobookshelf:/metadata/backups /mnt/share/media/backups/audiobookshelf -docker cp tautulli:/config/backups /mnt/share/media/backups/tautulli -docker cp sabnzbd:/config/sabnzbd.ini /mnt/share/media/backups/sabnzbd/sabnzbd_$(date +%Y%m%d_%H%M%S).ini +log_file_details "radarr:/config/Backups/scheduled" "/mnt/share/media/backups/radarr/" + +docker cp prowlarr:/config/Backups/scheduled /mnt/share/media/backups/prowlarr/ +log_file_details "prowlarr:/config/Backups/scheduled" "/mnt/share/media/backups/prowlarr/" + +docker cp audiobookshelf:/metadata/backups /mnt/share/media/backups/audiobookshelf/ +log_file_details "audiobookshelf:/metadata/backups" "/mnt/share/media/backups/audiobookshelf/" + +docker cp tautulli:/config/backups /mnt/share/media/backups/tautulli/ +log_file_details "tautulli:/config/backups" "/mnt/share/media/backups/tautulli/" + +docker cp sabnzbd:/config/sabnzbd.ini /mnt/share/media/backups/sabnzbd/sabnzbd_$(date +%Y%m%d).ini +log_file_details "sabnzbd:/config/sabnzbd.ini" "/mnt/share/media/backups/sabnzbd/sabnzbd_$(date +%Y%m%d).ini" + +mkdir -p /mnt/share/media/backups/jellyseerr/backup_$(date +%Y%m%d) +docker cp jellyseerr:/config/db/ /mnt/share/media/backups/jellyseerr/backup_$(date +%Y%m%d)/ +log_file_details "jellyseerr:/config/db/" "/mnt/share/media/backups/jellyseerr/backup_$(date +%Y%m%d)/" + +docker cp jellyseerr:/config/settings.json /mnt/share/media/backups/jellyseerr/backup_$(date +%Y%m%d)/ +log_file_details "jellyseerr:/config/settings.json" "/mnt/share/media/backups/jellyseerr/backup_$(date +%Y%m%d)/" # send notification upon completion curl \ - -H tags:popcorn,backup,sonarr,radarr,prowlarr,sabnzbd,audiobookshelf,tautulli,${HOSTNAME} \ + -H tags:popcorn,backup,sonarr,radarr,prowlarr,sabnzbd,audiobookshelf,tautulli,jellyseerr,${HOSTNAME} \ -d "A backup of media-related databases has been saved to the /media/backups folder" \ https://notify.peterwood.rocks/lab