42 lines
1.0 KiB
Bash
42 lines
1.0 KiB
Bash
#!/bin/bash
|
||
|
||
cd /home/oberkoetter/Dokumente/Git/rettedpv
|
||
|
||
# === Konfiguration ===
|
||
REMOTE="ptv-nextcloud:/DPV"
|
||
BACKUP_DIR="./Backup"
|
||
ARCHIVE_BASE="./Archiv"
|
||
LOGFILE="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!"
|