Tool-Beschreibung

Der Rsync-Befehlsgenerator ist ein umfassendes Tool, das Ihnen hilft, komplexe rsync-Befehle über eine intuitive visuelle Oberfläche zu erstellen. Anstatt sich zahlreiche Kommandozeilen-Flags und -Optionen zu merken, können Sie Ihre rsync-Synchronisierungs- oder Backup-Operation konfigurieren, indem Sie Optionen auswählen, Pfade angeben und Filter festlegen. Das Tool generiert einen korrekt formatierten rsync-Befehl, den Sie kopieren und in Ihrem Terminal ausführen können.

Dieses Tool ist besonders nützlich für Systemadministratoren, DevOps-Ingenieure und Entwickler, die Dateien zwischen lokalen und entfernten Systemen synchronisieren, Backups erstellen oder Dateien auf Servern bereitstellen müssen. Es unterstützt sowohl lokale als auch entfernte Übertragungen über SSH mit umfangreichen Optionen für Komprimierung, Berechtigungen, Filterung und Übertragungsoptimierung.

Funktionen

  • Flexible Pfadkonfiguration: Konfigurieren Sie Quell- und Zielpfade für lokale und entfernte Systeme
  • SSH-Integration: Integrierte Unterstützung für entfernte Übertragungen mit benutzerdefinierter SSH-Port-Konfiguration
  • Umfassende Optionen: Zugriff auf gängige rsync-Flags, einschließlich:
    • Archivmodus (-a) für rekursives Verzeichniskopieren mit Berechtigungserhaltung
    • Ausführliche Ausgabe (-v) für detaillierte Übertragungsinformationen
    • Komprimierung (-z) zur Reduzierung der Netzwerkübertragung
    • Fortschrittsanzeige (--progress) zur Überwachung des Übertragungsstatus
    • Menschenlesbare Zahlen (-h) für Dateigrößen
    • Löschen überflüssiger Dateien (--delete) zum exakten Spiegeln der Quelle
    • Probelauf (--dry-run) zum Testen ohne Änderungen vorzunehmen
    • Berechtigungserhaltung (--perms)
    • Unterstützung für teilweise Übertragungen (--partial) zum Fortsetzen unterbrochener Übertragungen
  • Bandbreitenkontrolle: Begrenzen Sie die Übertragungsgeschwindigkeit in KB/s, um Netzwerküberlastung zu verhindern
  • Einschluss-/Ausschlussmuster: Fügen Sie mehrere Dateimuster hinzu, um zu filtern, was synchronisiert wird
  • Musterbereinigung: Automatische Verarbeitung von Sonderzeichen in Dateimustern
  • Zusätzliches Optionsfeld: Fügen Sie beliebige benutzerdefinierte rsync-Optionen hinzu, die nicht durch Kontrollkästchen abgedeckt sind
  • Echtzeit-Befehlsvorschau: Sehen Sie die generierte Befehlsaktualisierung, wenn Sie Optionen ändern
  • In Zwischenablage kopieren: Ein-Klick-Kopieren des vollständigen Befehls

Anwendungsfälle

Server-Backups Erstellen Sie automatisierte Backup-Skripte, indem Sie rsync-Befehle generieren, die Ihre Serverdaten an einen Backup-Speicherort synchronisieren. Verwenden Sie die Option --delete, um sicherzustellen, dass das Backup ein exaktes Spiegelbild ist, und --dry-run, um vor dem tatsächlichen Backup zu testen.

Website-Bereitstellung Stellen Sie Website-Dateien von Ihrer lokalen Entwicklungsumgebung auf einem Produktionsserver bereit. Verwenden Sie Einschluss-/Ausschlussmuster, um temporäre Dateien, Protokolle oder Konfigurationsdateien zu überspringen, die nicht bereitgestellt werden sollten. Die Bandbreitenbegrenzungsoption verhindert, dass die Bereitstellung Ihre Netzwerkverbindung überlastet.

Entfernte Dateisynchronisation Halten Sie Verzeichnisse zwischen mehreren Servern oder zwischen Ihrem lokalen Computer und einem entfernten Server synchronisiert. Der Archivmodus erhält Dateiberechtigungen, Zeitstempel und symbolische Links und gewährleistet konsistente Dateiattribute über Systeme hinweg.

Inkrementelle Backups Verwenden Sie die Option --partial, um große Übertragungen fortzusetzen, die unterbrochen wurden, und sparen Sie Zeit und Bandbreite. Kombinieren Sie mit Komprimierung, um die Netzwerknutzung für große Datensätze zu optimieren.

Entwicklungs-Workflows Synchronisieren Sie Code zwischen Entwicklungsmaschinen oder stellen Sie auf Staging-Servern bereit. Verwenden Sie Ausschlussmuster, um Versionskontrollverzeichnisse (.git), Abhängigkeiten (node_modules) oder Build-Artefakte zu überspringen.

Datenmigration Übertragen Sie große Datenmengen zwischen Systemen mit Fortschrittsüberwachung und Komprimierung. Die Option für menschenlesbare Zahlen erleichtert das Verfolgen des Übertragungsfortschritts und die Schätzung der Abschlusszeit.

Tests und Validierung Verwenden Sie den Probelaufmodus, um eine Vorschau dessen zu erhalten, was übertragen würde, ohne tatsächlich Dateien zu kopieren. Dies ist wichtig, um komplexe Einschluss-/Ausschlussmuster zu validieren oder sicherzustellen, dass Sie die richtigen Dateien synchronisieren, bevor Sie Änderungen vornehmen.

Befehlsstruktur

Das Tool generiert Befehle im folgenden Format:

rsync [kurz-flags] [lang-optionen] [ssh-optionen] [einschlussmuster] [ausschlussmuster] [zusätzliche-optionen] "quelle" "ziel"

Kurze Flags werden kombiniert (z. B. -avzh), während lange Optionen separat angegeben werden. Einschluss- und Ausschlussmuster werden der Reihe nach verarbeitet, was komplexe Filterlogik ermöglicht. Pfade mit Sonderzeichen werden automatisch in Anführungszeichen gesetzt und maskiert.

Wichtige Hinweise

  • Abschließende Schrägstriche in Pfaden: In rsync sind abschließende Schrägstriche bei Quellpfaden wichtig. /quelle/ kopiert den Inhalt, während /quelle das Verzeichnis selbst kopiert.
  • Warnung zur Delete-Option: Das Flag --delete entfernt Dateien im Ziel, die in der Quelle nicht existieren. Testen Sie immer zuerst mit --dry-run.
  • SSH-Authentifizierung: Entfernte Übertragungen erfordern eine ordnungsgemäße SSH-Schlüsseleinrichtung oder fordern während der Ausführung Passwörter an.
  • Musterreihenfolge: Einschlussmuster werden vor Ausschlussmustern angewendet. Spezifischere Muster sollten vor allgemeinen kommen.
  • Bandbreitenbegrenzung: Angegeben in KB/s. Beispielsweise begrenzt 1024 die Übertragung auf etwa 1 MB/s.