Verwenden des Rsync-Dienstprogramms auf einem VPS
08:49, 28.04.2022
Rsync ist eine Software, mit der Sie Dateien remote oder lokal auf einem VPS und einem VDS synchronisieren können. Das Hauptmerkmal des Dienstprogramms ist die höchste Kopiergeschwindigkeit, die durch das Ignorieren von Dateien erreicht wird, die sich seit der letzten Synchronisierung nicht geändert haben. Rsync ist ein integriertes Dienstprogramm für die meisten vorhandenen Linux-Distributionen, und es hat praktisch keine kostenlosen Analoga in Geschwindigkeit und Bequemlichkeit – dies ist auf die Popularität von Webmastern auf der ganzen Welt zurückzuführen.
Grundlegende Rsync-Syntax
Die Remote-Synchronisierung mit Rsync funktioniert mit einer einfachen Syntax, die schematisch wie folgt aussieht:
# rsync -options <source> <destination>
<Options> sind die Optionen des Dienstprogramms, <source> bedeutet das Verzeichnis oder die Datei, die die Quelle ist, und <destination> ist der Empfänger.
Betrachten wir die am häufigsten verwendeten Optionen des Dienstprogramms:
- -v - Debug-Modus;
- -q - Fehlerausgabeverbot;
- -r - rekursiver Kopiermodus;
- -a - Archivierung mit Simlinks;
- -z – Datenkomprimierung;
- -b - Erstellen von Backups;
- -h - Ausgabe von Daten im human-readable Format.
Dies ist nur ein grundlegender Satz von Parametern, die Sie bei der Arbeit mit dem Rsync–Dienstprogramm aktivieren können – in der offiziellen Dokumentation finden Sie viel detailliertere Guides und Manuale, aber Sie benötigen Englischkenntnisse, um sie zu lesen.
Synchronisierung mit dem Remote-System
Wenn Sie lokalen Zugriff auf Server haben, genügt es, über die Befehlszeile zwei Verzeichnisse, Quelle und Empfänger anzugeben:
rsync -avzhHl /path/of/source/folder /path/to/destination/folder
Wenn Sie die Daten jedoch remote sichern möchten, fügen Sie dem Befehl den Kontonamen und die IP-Adresse des Zielhosts hinzu:
rsync -avzhHl /path/of/source/folder root@192.168.56.1:/path/to/destination/folder
Ein korrekter und sicherer Betrieb für Remote Sync erfordert die Konfiguration des Zugriffs mit Schlüsseln, das Dienstprogramm ermöglicht es.
So richten Sie die automatische Verzeichnissynchronisierung ein
Um den Prozess zu automatisieren, müssen Sie den Cron-Taskplaner verwenden, der auch auf jedem Linux-basierten Betriebssystem verfügbar ist. Zuerst müssen Sie ein Skript erstellen:
vi rsync_to_cron.sh !/bin/sh RSYNC=/usr/bin/rsync SSH=/usr/bin/ssh KEY=/root/.ssh/id_rsa RUSER=root RHOST=192.168.56.1 RPATH=/remote/dir LPATH=/local/dir $RSYNC -az -e "$SSH -i $KEY" $RUSER@$RHOST:$RPATH $LPATH
Dann erstellen Sie einen Job für cron:
crontab -e 0 22 * * * /root/scripts/rsync_to_cron.sh
Nun, um den Synchronisierungsprozess zu verfolgen, können Sie immer den -progress-Schlüssel verwenden:
rsync -avzhHl --progress /path/of/source/folder root@192.168.56.1:/path/to/destination/folder
Anwendungsbeispiel
Das einfachste Beispiel für die Verwendung des Dienstprogramms Rsync für die Remote-Synchronisierung wäre der Befehl:
rsync -a --delete-after /data/ /backup/
Hier geben wir den Befehl, das Verzeichnis /data mit dem Verzeichnis /backub zu synchronisieren. Der Schlüssel delete-after löscht das Verzeichnis /backup von allen Dateien, die im Verzeichnis /data fehlen. Parameter -a beschleunigt den Prozess, da nur geänderte Dateien kopiert werden.
Das Dienstprogramm ermöglicht es Ihnen, Daten in beide Richtungen zu kopieren, während die Rsync-Syntax viele zusätzliche Modi und Optionen aktiviert. Darauf beenden wir unser Material und danken Ihnen für Ihre Aufmerksamkeit. Wenn Sie einen VPS mieten möchten – kontaktieren Sie uns, unsere Experten helfen Ihnen bei der Auswahl des optimalen Tarifs.