Files
rettedpv/README.md
2025-09-04 14:29:12 +02:00

2.3 KiB

🛟 Datensicherungsskript mit rclone

Dieses Skript sichert regelmäßig Daten aus einer Nextcloud-Quelle in ein lokales Backup-Verzeichnis. Alte Versionen werden dabei archiviert.

📋 Funktionen

  • Synchronisiert ein Verzeichnis (ptv-nextcloud:/DPV) mit einem lokalen Ordner ./Backup/
  • Verwendet rclone --backup-dir, um ältere, geänderte oder gelöschte Dateien in ein Archiv zu verschieben
  • Erstellt pro Lauf ein neues Archivverzeichnis unter ./Archiv/<Datum-Zeit>
  • Protokolliert alle Vorgänge in rettedpv.log
  • Entfernt leere Verzeichnisse im Archiv

🧱 Verzeichnisstruktur

.
├── Backup/                 # Aktueller Stand der Daten
├── Archiv/
│   └── 2025-07-03-15-30/   # Frühere Versionen
└── rettedpv.sh             # Das Backup-Script

🚀 Cronjob-Eintrag (Beispiel)

0 * * * * /pfad/zum/script.sh

→ Startet das Backup jede Stunde zur vollen Stunde.

📌 Stelle sicher, dass rclone im Pfad ist und alle Pfade absolut angegeben sind, wenn das Skript per cron läuft.

⚙️ Voraussetzungen

  • rclone muss installiert und konfiguriert sein (Remote: ptv-nextcloud)
  • Schreibrechte auf das Arbeitsverzeichnis (./Backup, ./Archiv, ./log.txt)
  • GNU date, find, mkdir (standardmäßig in Linux vorhanden)

🔍 Logging & Fehlerbehandlung

  • Alle Logeinträge landen in rettedpv.log
  • Die Log-Datei liegt im örtlichen Gitea/logger/Logs-Verzeichnis
  • Fehler von rclone erscheinen dort mit Zeitstempel
  • Leere Verzeichnisse im Archiv werden automatisch gelöscht
  • Das optionale Script "rotate.sh" rotiert log.txt und verhindert, dass die Datei zu groß wird.

🛠 Wiederherstellung

Die Dateien im ./Archiv/-Ordner enthalten alte Versionen gelöschter oder veränderter Dateien. Du kannst sie manuell zurückkopieren.

🧪 Beispielausgabe (log.txt)

Thu Jul  3 15:30:01 CEST 2025 Starte Rettung… 
...
Thu Jul  3 15:35:12 CEST 2025 Lösche leere Verzeichnisse…
Thu Jul  3 15:35:13 CEST 2025 Rettung beendet 

🔒 Sicherheitshinweis

Dieses Skript überschreibt keine Daten, sondern nutzt versioniertes Backup über --backup-dir. Dennoch empfiehlt sich:

  • Nur auf vertrauenswürdigen Systemen auszuführen
  • Zugriff auf Backup-Ordner zu beschränken

Lizenz: MIT
Autor: Alf