Skip to main content

rclone Backup: Local Server → NAS (WebDAV)

TheDas followingfolgende exampleBeispiel performszeigt aeine simpleeinfache backupSicherung fromvon aeinem locallokalen machineGerät (192.168.10.5) toauf aein NAS atunter 192.168.10.10 usingmittels aeines WebDAVWebDAV-Freigabepfads share namednamens backup.

rclone Configuration

Konfiguration

Run:Führe aus:

rclone config

CreateNeuen aRemote-Speicher new remote:anlegen:

  • Name: nasbackup
  • Storage: webdav
  • URL: http://192.168.10.10/backup
  • Vendor: other
  • User: <nas-usernamebenutzername>
  • Pass: <nas-passwordpasswort>

ReferenceReferenz-Konfigurationsblock configuration(wird block:automatisch erstellt):

[nasbackup]
type = webdav
url = http://192.168.10.10/backup
vendor = other
user = <nas-usernamebenutzername>
pass = <encrypted-passwordverschlüsseltes-passwort>

Backup

Backup-Befehle

Command

Für die NPM-Daten:

rclone sync /opt/nginx-proxy-manager/data nasbackup:/npm-data --progress --transfers=4 --checkers=4

Certificates:Für die Let’s Encrypt Zertifikate:

rclone sync /opt/nginx-proxy-manager/letsencrypt nasbackup:/npm-letsencrypt --progress

Explanation

Erklärung ofder Parameters

wichtigsten Parameter

sync
MakesSorgt thedafür, destinationdass identicaldas toZiel theexakt source.wie Itdie copiesQuelle newwird. andNeue changedund filesgeänderte andDateien removeswerden fileskopiert, inim theZiel destinationnicht thatmehr noexistierende longerDateien existwerden ingelöscht. theDas source.ist Thisein ensuresechter aSpiegel, truebirgt mirror,aber butdas itRisiko canvon deleteDatenverlust, datafalls ifdas theZiel targetfalsch is incorrect.ist.

--progress
DisplaysZeigt livewährend transferder informationÜbertragung suchLive-Informationen asan current(aktuelle file,Datei, speedGeschwindigkeit, andvoraussichtliche ETA.Restzeit). ItBeeinflusst doesdie notÜbertragung influence the transfer itself.nicht.

--transfers=4
DefinesLegt howfest, manywie filesviele areDateien uploadedgleichzeitig simultaneously.hochgeladen Higherwerden. valuesHöhere canWerte speedbeschleunigen updie transfersÜbertragung onbei aschneller fastNetzwerkverbindung, networkkönnen butaber mayein overloadschwaches theNAS NAS.überlasten. Four4 isist aein sensibleguter localStandardwert default.im lokalen Netz.

--checkers=4
SpecifiesAnzahl howder manyparallelen filesPrüfungen, rcloneob checksDateien ingeändert parallelwurden. toMehr detectChecker changes.beschleunigen Moredas checkersScannen accelerategroßer scanningVerzeichnisse large directories.deutlich.

--quiet
SuppressesUnterdrückt mostfast output.alle UsefulAusgaben. inSehr cronsinnvoll jobsbei toCron-Jobs, avoiddamit unnecessarydie logs.Logdateien nicht unnötig vollgeschrieben werden.

Simple

Einfacher CronCron-Job Job

(täglich um 03:00 Uhr)
0 3 * * * rclone sync /opt/nginx-proxy-manager/data nasbackup:/npm-data --quiet

Erweiterte und sichere Backup-Strategien mit rclone

ThisUm performsversehentlichen aDatenverlust dailyzu backupvermeiden at(z. 03:00.B. durch falsche Pfade, fehlerhafte Synchronisation oder versehentliches Löschen), lohnt es sich, einige Sicherheits- und Komfort-Optionen von rclone zu nutzen.

1. Wichtige Sicherheits-Flags

Diese Parameter solltest du besonders bei sync-Befehlen immer im Hinterkopf haben:

  • --dry-run oder -n
    Führt eine Simulation durch – zeigt genau, was passieren würde, ohne irgendeine Datei zu verändern.
    Sehr empfehlenswert vor dem ersten echten Lauf oder nach größeren Änderungen!

    rclone sync /opt/nginx-proxy-manager/data nasbackup:/npm-data --dry-run --progress
    
  • --max-delete (z. B. --max-delete 10 oder --max-delete 5%)
    Begrenzt die maximale Anzahl (oder Prozentzahl) von Dateien, die auf einmal gelöscht werden dürfen.
    Schützt vor Katastrophen, wenn z. B. die Quelldaten plötzlich fehlen.

    rclone sync ... --max-delete 20 --max-delete 10%
    
  • --retries 5 und --retries-sleep 10s
    Wiederholt fehlerhafte Übertragungen automatisch (Standard ist 3). Sehr nützlich bei instabilen Netzwerken oder NAS.

  • --low-level-retries 10
    Noch tiefere Wiederholungen auf Protokollebene (gut bei WebDAV).

  • --backup-dir nasbackup:/npm-data-backup/$(date +%Y-%m-%d)
    (siehe nächster Abschnitt – sehr mächtig in Kombination)

Empfohlener „sicherer“ Sync-Befehl zum Testen / Alltag:

rclone sync /opt/nginx-proxy-manager/data nasbackup:/npm-data \
  --progress \
  --transfers=4 \
  --checkers=8 \
  --retries 6 \
  --max-delete 50 \
  --dry-run    # ← erst ohne, dann mit löschen

2. Versionierte Backups (empfohlene Methode für mehr Sicherheit)

Es gibt zwei gängige Ansätze, um alte Versionen zu behalten:

IfVariante youA want, IMit can--backup-dir extend(sehr thiselegant, with optional safety flags, versioned backups or encryption.rclone-intern)

Dateien, die auf dem Ziel gelöscht oder überschrieben werden würden, landen stattdessen in einem versionsspezifischen Ordner.

rclone sync /opt/nginx-proxy-manager/data nasbackup:/npm-data \
  --backup-dir nasbackup:/npm-data-versions/$(date +%Y-%m-%d_%H-%M) \
  --suffix .bak-$(date +%Y%m%d-%H%M%S) \
  --progress \
  --max-delete 100

→ Alte Versionen landen z. B. in
nasbackup:/npm-data-versions/2026-02-04_03-00/

Variante B – copy statt sync + --backup-dir

Wenn du gar nichts löschen möchtest, sondern nur hinzufügen und alte Dateien umbenennen:

rclone copy /opt/nginx-proxy-manager/data nasbackup:/npm-data \
  --backup-dir nasbackup:/npm-data-old/$(date +%Y-%m) \
  --suffix "-$(date +%Y%m%d-%H%M%S)" \
  --progress

→ Das Ziel wird nie gelöscht, sondern nur ergänzt. Alte Dateien werden automatisch umbenannt und in den Backup-Ordner verschoben.

Tipp: Monatliche Ordner (%Y-%m) oder wöchentliche (%Y-%W) helfen, den Speicherbedarf langfristig zu kontrollieren.

3. Cron-Beispiele mit mehr Sicherheit

Täglicher Sync mit Sicherheitsnetz (empfohlen):

0 3 * * * rclone sync /opt/nginx-proxy-manager/data nasbackup:/npm-data \
  --backup-dir nasbackup:/npm-data-versions/$(date +\%Y-\%m-\%d) \
  --max-delete 40 \
  --retries 5 \
  --quiet --log-file /var/log/rclone-npm.log

Wöchentlicher vollständiger Check + Versionierung (sonntags):

0 4 * * 0 rclone sync /opt/nginx-proxy-manager/data nasbackup:/npm-data \
  --backup-dir nasbackup:/npm-data-weekly/$(date +\%Y-\%W) \
  --max-delete 200 \
  --progress >> /var/log/rclone-weekly.log 2>&1

Kurze Entscheidungshilfe

ZielEmpfohlener BefehlLöscht im Ziel?Behält alte Versionen?
Exakter Spiegel, wenig SpeichersyncJaNein
Spiegel + Versionssicherungsync --backup-dirJaJa (verschoben)
Nur hinzufügen, nie löschencopy --backup-dirNeinJa (umbenannt)
Erster Test / Überprüfungsync --dry-runNein

Falls du möchtest, kann ich dir auch noch zeigen, wie man:

  • eine verschlüsselte Schicht (crypt) darüber legt
  • nach dem Backup eine Healthcheck-URL aufruft (z. B. healthchecks.io)
  • alte Versionen automatisch nach 30/60 Tagen löscht

… sag einfach Bescheid! 😄