Startseite > Datei- und Verzeichnisverwaltung > rsync-dry-run

rsync-dry-run: Vorschau vor der rsync-Ausführung

rsync-dry-run ist eine Funktion, die simuliert, welche Dateien kopiert, gelöscht oder geändert werden, wenn ein rsync-Befehl ausgeführt wird, ohne tatsächlich Dateien zu übertragen oder Änderungen vorzunehmen. Dies wird typischerweise mit der Option 'rsync -n' oder 'rsync --dry-run' implementiert. Es ist eine wichtige Sicherheitsmaßnahme, um unerwartete Ergebnisse zu vermeiden, bevor wichtige Daten bearbeitet werden.

Übersicht

Der Dry-Run-Modus von rsync simuliert die Auswirkungen eines Befehls, bevor die eigentliche Operation ausgeführt wird, und zeigt dem Benutzer die Änderungen im Voraus an. Dies ist besonders wichtig bei der Ausführung komplexer rsync-Befehle, die destruktive Operationen wie die Option `--delete` beinhalten.

Hauptvorteile

  • Schutz vor Datenverlust: Erkennt unbeabsichtigtes Löschen oder Überschreiben von Dateien im Voraus.
  • Überprüfung unerwarteter Änderungen: Ermöglicht die genaue Identifizierung, welche Dateien übertragen oder geändert werden.
  • Befehlsvalidierung: Stellt sicher, dass komplexe rsync-Optionen korrekt funktionieren.
  • Zeitersparnis: Filtert unnötige Operationen bei großen Übertragungen im Voraus heraus.

Wichtige Optionen

Da rsync-dry-run tatsächlich die Optionen des rsync-Befehls nutzt, werden hier die wichtigsten rsync-Optionen erläutert, die häufig zusammen mit dem Dry-Run-Modus verwendet werden.

Optionen im Zusammenhang mit Dry-Run

Allgemeine rsync-Optionen (verwendet mit Dry-Run)

Erzeugter Befehl:

Kombinieren Sie die Befehle.

Beschreibung:

`rsync-dry-run` Führen Sie den Befehl aus.

Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.

Anwendungsbeispiele

Verschiedene Szenarien zur Nutzung des rsync Dry-Run-Modus. Alle Beispiele geben die Ergebnisse ohne tatsächliche Änderungen aus.

Grundlegender Dry-Run

rsync -avn /path/to/source/ /path/to/destination/

Überprüft im Voraus, welche Dateien beim Synchronisieren des Inhalts eines Quellverzeichnisses mit einem Zielverzeichnis übertragen werden.

Vorschau mit Löschoption

rsync -avn --delete /path/to/source/ /path/to/destination/

Überprüft im Voraus, welche Dateien gelöscht werden, wenn Dateien, die nur im Zielverzeichnis vorhanden sind, gelöscht werden. Dies ist ein sehr wichtiger Schritt.

Dry-Run zu einem Remote-Server

rsync -avn /path/to/local/ user@remote_host:/path/to/remote/

Überprüft im Voraus, welche Dateien übertragen werden, bevor sie an einen Remote-Server gesendet werden.

Dry-Run mit Ausschluss und Einschluss bestimmter Dateien

rsync -avn --exclude='*.log' --include='data/' --include='*/' --exclude='*' /path/to/source/ /path/to/destination/

Überprüft im Voraus, wie komplexe Filterregeln angewendet werden, die Dateien mit bestimmten Erweiterungen ausschließen und nur bestimmte Verzeichnisse einschließen.

Tipps & Hinweise

Tipps und zu beachtende Punkte für die effektive Nutzung der rsync Dry-Run-Funktion.

Immer zuerst Dry-Run verwenden

Besonders bei der Verwendung von Optionen wie `--delete` oder komplexen Filterregeln sollten Sie immer zuerst die Ergebnisse mit der Option `-n` überprüfen, bevor Sie den eigentlichen rsync-Befehl ausführen. Dies ist der beste Weg, um irreversiblen Datenverlust zu verhindern.

  • **Sicherheit geht vor:** Beginnen Sie bei der Synchronisierung wichtiger Daten immer mit `rsync -avn ...`.
  • **Ausgabe analysieren:** Überprüfen Sie die Ausgabe des Dry-Runs sorgfältig, um sicherzustellen, dass keine unerwarteten Ergebnisse vorliegen.

rsync-Installation überprüfen

rsync ist auf den meisten Linux-Systemen vorinstalliert. Falls nicht, muss es über den Paketmanager installiert werden (z.B. `sudo apt install rsync` oder `sudo yum install rsync`). Da rsync-dry-run die Optionen des rsync-Befehls verwendet, muss rsync installiert sein.

Bedeutung des Schrägstrichs (/)

Ob am Ende des Quellpfads ein Schrägstrich (/) steht oder nicht, beeinflusst das Verhalten von rsync. Mit Dry-Run können Sie diesen Unterschied klar erkennen.

  • `source/`: Kopiert den *Inhalt* des source-Verzeichnisses in das Zielverzeichnis.
  • `source`: Kopiert das source-Verzeichnis *selbst* in das Zielverzeichnis.

Gleiche Kategorie Befehle