diff --git a/.gitignore.stop b/.gitignore similarity index 100% rename from .gitignore.stop rename to .gitignore diff --git a/rettedpv.sh b/rettedpv.sh index 446843a..058d64d 100644 --- a/rettedpv.sh +++ b/rettedpv.sh @@ -1,13 +1,41 @@ -AArchiv="./Archiv/$(date +%Y-%m-%d-%H-%M)" -mkdir -p $AArchiv +#!/bin/bash -echo " " >>log.txt -echo " " >>log.txt -echo "$(date) Starte Rettung… " >>log.txt -rclone sync ptv-nextcloud:/DPV ./Backup/ -P --backup-dir=./$AArchiv --log-file="log.txt" --log-level=INFO +cd /home/oberkoetter/Dokumente/Git/rettedpv -echo " " >>log.txt -echo "$(date) Lösche leere Verzeichnisse… " >>log.txt -find Archiv/* -type d -empty -delete +# === Konfiguration === +REMOTE="ptv-nextcloud:/DPV" +BACKUP_DIR="./Backup" +ARCHIVE_BASE="./Archiv" +LOGFILE="log.txt" -echo "$(date) Rettung beendet " >>log.txt +# === Zeitstempel & Archivverzeichnis === +TIMESTAMP=$(date +%Y-%m-%d-%H-%M) +ARCHIVE_DIR="${ARCHIVE_BASE}/${TIMESTAMP}" +mkdir -p "$ARCHIVE_DIR" + +# === Logging-Funktion === +log() { + echo "$(date '+%Y-%m-%d %H:%M:%S') $1" >> "$LOGFILE" + echo "-> $1" +} + +# === Beginn der Sicherung === +log "" +log "" +log "🔁 Starte Datensicherung…" + +# === Synchronisierung mit rclone === +gum spin --title "rclone läuft..." -- rclone sync "$REMOTE" "$BACKUP_DIR" \ + --backup-dir="$ARCHIVE_DIR" \ + --log-file="$LOGFILE" \ + --log-level=INFO +log "ℹ️ ERR nach rclone: $?" + +# === Aufräumen leerer Archivverzeichnisse === +log "🧹 Entferne leere Verzeichnisse in $ARCHIVE_BASE…" +find "$ARCHIVE_BASE" -type d -empty -delete + +# === Ende der Sicherung === +log "✅ Datensicherung abgeschlossen." + +gum style --border normal --margin "1" --padding "1 2" --foreground 212 "✅ Backup abgeschlossen!"