rclone_Audio_sync.sh hinzugefügt

This commit is contained in:
alf
2026-09-10 13:40:37 +00:00
parent dbae56fd07
commit 13fd999eb8

114
rclone_Audio_sync.sh Normal file
View File

@ -0,0 +1,114 @@
LOGBUCH="/media/Jotta.log"
QUELLE="/media/USB1/Bibliothek1"
# LOGGER="/bin/bash /root/logger.sh -f $LOGBUCH -l INFO -m "
LOGLEVEL="INFO"
MODUS="sync" # sync oder copy ACHTUNG: sync nur mit Backupdir!
DRY_LOG="sync.log"
speichern() {
local quelle="$1"
local ziel="$2"
local logbuch="$3"
local logger="/bin/bash /root/logger.sh -f $logbuch -l INFO -m"
$logger "Starte RCLONE-Sitzung"
$logger "$quelle -> $ziel"
echo "Prüfe Änderungen für $quelle..."
rm -f "$DRY_LOG"
# Dry-Run: Wir loggen im Detail-Modus (-v), um die genauen Dateiaktionen zu sehen
rclone sync "$quelle" "$ziel" --ignore-existing --size-only --log-file="$DRY_LOG" -v --dry-run
# Filtert nach dem exakten Dry-Run-Text für Löschungen von rclone
local loeschungen=$(grep -E "Skipped delete as --dry-run is set|Would delete" "$DRY_LOG")
if [ -n "$loeschungen" ]; then
echo "========================================================"
echo "⚠️ GLACIER-WARNUNG: Dateien würden im Ziel gelöscht werden!"
echo "========================================================"
echo "$loeschungen" | sed 's/.*NOTICE://' # Verschönert die Ausgabe im Terminal
echo "========================================================"
read -p "Möchten Sie diese Löschungen auf Scaleway/Jotta durchführen? (w = Weiter, Enter = Abbrechen): " weiter
if [ "$weiter" != "w" ]; then
echo "❌ Synchronisation abgebrochen. Keine Daten gelöscht."
$logger "Abgebrochen durch Nutzer wegen Löschwarnung."
echo
return 1
fi
else
echo "✅ Keine Löschungen notwendig. Führe Synchronisation aus..."
fi
# Tatsächlicher Sync-Lauf
rclone sync -P "$quelle" "$ziel" --ignore-existing --size-only --log-file="$logbuch" --log-level=$LOGLEVEL
$logger "Fertig mit $quelle"
$logger "------------------------------------------------------------------"
echo "🎉 Fertig!"
echo
}
# Bibliothek1 # # # # # # # # # # # # # # # # # # # # # # # #
############### Scaleway ##############
QUELLE="/media/USB1/Bibliothek1"
ZIEL="ScalewayGlacierSecret:/Audio/ABS/Books"
LOGBUCH="/media/Scaleway.log"
LOGGER="/bin/bash /root/logger.sh -f $LOGBUCH -l INFO -m "
speichern "$QUELLE" "$ZIEL" "$LOGBUCH"
############## Jottacloud #################
ZIEL="jotta:/Audio/ABS/Bibliothek1"
LOGBUCH="/media/Jotta.log"
LOGGER="/bin/bash /root/logger.sh -f $LOGBUCH -l INFO -m "
speichern "$QUELLE" "$ZIEL" "$LOGBUCH"
# Helena # # # # # # # # # # # # # # # # # # # # # # # #
############### Scaleway ##############
QUELLE="/media/audiobookshelf/Helena"
ZIEL="ScalewayGlacierSecret:/Audio/ABS/Helena"
LOGBUCH="/media/Scaleway.log"
LOGGER="/bin/bash /root/logger.sh -f $LOGBUCH -l INFO -m "
speichern "$QUELLE" "$ZIEL" "$LOGBUCH"
############## Jottacloud #################
ZIEL="jotta:/Audio/ABS/Helena"
LOGBUCH="/media/Jotta.log"
LOGGER="/bin/bash /root/logger.sh -f $LOGBUCH -l INFO -m "
speichern "$QUELLE" "$ZIEL" "$LOGBUCH"
# Podcast-Archiv # # # # # # # # # # # # # # # # # # # # # # # #
############### Scaleway ##############
QUELLE="/media/audiobookshelf/Podcasts/Archiv/"
ZIEL="ScalewayGlacierSecret:/Audio/ABS/Podcasts"
LOGBUCH="/media/Scaleway.log"
LOGGER="/bin/bash /root/logger.sh -f $LOGBUCH -l INFO -m "
speichern "$QUELLE" "$ZIEL" "$LOGBUCH"
############## Jottacloud #################
ZIEL="jotta:/Audio/gPodder/"
LOGBUCH="/media/Jotta.log"
LOGGER="/bin/bash /root/logger.sh -f $LOGBUCH -l INFO -m "
speichern "$QUELLE" "$ZIEL" "$LOGBUCH"