So verwenden Sie RSYNC zum Kopieren von Dateien

So verwenden Sie RSYNC zum Kopieren von Dateien

RSYNC ist ein Befehlszeilen-Tool unter Linux, mit dem Dateien von einem Quellort zu einem Zielort kopiert werden. Sie können Dateien, Verzeichnisse und gesamte Dateisysteme kopieren und die Dateien zwischen verschiedenen Verzeichnissen synchronisieren. Es kopiert mehr als nur die Dateien. Es reduziert die Datenmenge, die über das Netzwerk gesendet wird, indem nur die neu oder aktualisierten Dateien gesendet werden. Deshalb gilt es als großartiges Dienstprogramm für das Kopieren und Rückzug von Dateien. RSYNC unterstützt auch das Kopieren von Dateien in ein Remote -System über SSH.

In diesem Artikel werden wir erklären, wie Sie RSYNC verwenden, um Dateien mit einigen praktischen Beispielen zu kopieren. Wir werden auch die Verwendung von RSYNC beim Kopieren einer einzelnen Datei, mehrerer Dateien und des Verzeichnisses auf lokale und entfernte Systeme erläutern. Wir werden abdecken, wie man RSYNC verwendet, um:

  • Kopieren Sie Datei/Verzeichnis im lokalen System
  • Kopieren Sie die Datei/das Verzeichnis von lokal zum Remote -System
  • Kopieren Sie die Datei/das Verzeichnis vom Remote -System nach lokal

Wir haben die in diesem Artikel auf einem Ubuntu 20 genannten Befehle und Verfahren erklärt.04 LTS. Sie benötigen das Befehlszeilenterminal zum Kopieren von Dateien mit RSYNC. Verwenden Sie zum Öffnen der Befehlsleitungsanschlussanwendung die Tastaturverknüpfung von Strg+Alt+T -Tastatur.

Installieren von RSYNC

RSYNC wird in Ubuntu 20 vorinstalliert.04 LTS. Wenn es jedoch versehentlich aus dem System entfernt wird, können Sie es wie folgt installieren:

$ sudo apt installieren rsync

Hier sind einige der häufig verwendeten Optionen, die mit RSYNC verwendet werden können:

-A: Archivmodus
-V: Zeigt Details zum Kopierprozess an
-P: Zeigt die Fortschrittsleiste an
-R: Kopiert Daten rekursiv
-Z: Komprimiert Daten
-F: Ausgang unterdrücken

Kopieren Sie Dateien und Verzeichnisse lokal

Die allgemeine Syntax von RSYNC ist:

$ rsync [Option] [Quelle] [Ziel]

Kopieren Sie eine einzige Datei lokal

Wenn Sie eine Datei von einem Ort in ein anderes in Ihrem System kopieren möchten, können Sie dies durch Eingabe tun rsync gefolgt vom Quelldateinamen und dem Zielverzeichnis.

Zum Beispiel, um eine einzelne Datei zu kopieren. “Datei1.TXT “Aus dem aktuellen Standort, der das Verzeichnis von ~/documents verzeichnet ist, wäre der Befehl:

$ rsync/home/tin/file1.txt/home/tin/dokumente

Hinweis: anstelle von „/home/tin/file1.txt “können wir auch" Datei1 "eingeben, da wir derzeit im Heimverzeichnis arbeiten. Außerdem können wir ~/Dokumente verwenden, anstatt den vollständigen Pfad als "/home/tin/dokumente" zu erwähnen.

Kopieren Sie mehrere Dateien lokal

Wenn Sie mehrere Dateien gleichzeitig von einem Speicherort zu einem anderen in Ihrem System kopieren möchten, können Sie dies durch Eingabe tun rsync gefolgt vom Namen von Quelldateien und dem Zielverzeichnis.

Zum Beispiel, um die Dateien zu kopieren “Datei2.txt ”und„ Datei3).txt ”aus dem Home -Verzeichnis zu ~/dokumentiertes Verzeichnis, der Befehl wäre:

$ rsync/home/tin/file2.txt/home/tin/file3.txt/home/tin/dokumente

Um alle Dateien mit derselben Erweiterung zu kopieren. Zum Beispiel, um alle Dateien aus dem Home -Verzeichnis zu kopieren, das mit endet, mit “.ZIP ”Erweiterung im Verzeichnis ~/documents, werden wir verwenden:

$ rsync/home/tin/*.ZIP ~/Dokumente

Verzeichnisse lokal kopieren

Wenn Sie ein Verzeichnis mit seinem Unterabweis und allen Inhalten von einem Ort zu einem anderen in Ihrem System kopieren möchten, können Sie dies durch Eingabe tun rsync gefolgt vom Quell- und Zielverzeichnis.

Zum Kopieren des Verzeichnisses „Beispiel“ in das Verzeichnis „testen/“ im Home -Verzeichnis wäre der Befehl:

$ rsync -av/home/tin/sample/home/tin/test

HINWEIS: Angeben "/" nach dem Quellverzeichnis kopiert nur den Inhalt des Verzeichnisses. Wenn wir das "/" nach dem Quellverzeichnis nicht angeben, wird das Quellverzeichnis auch in das Zielverzeichnis kopiert.

Wie in der folgenden Ausgabe können Sie feststellen, dass unser Quellverzeichnis „Beispiel“ ebenfalls in das Zielverzeichnis kopiert wird (da wir „Beispiel“ anstelle von „Beispiel/“ als Quellverzeichnis verwendet haben).

RSYNC unterstützt eine inkrementelle Übertragung, wie Sie in der obigen Ausgabe sehen können, dass es nur die neuen oder aktualisierten Dateien überträgt.

Kopieren Sie Dateien basierend auf der maximalen Größe

Während des Kopierens können wir auch die maximale Größe der Dateien angeben, die mit der Option „-Max-Größe“ kopiert werden können. Zum Beispiel wäre der Befehl:

$ rsync -a -max -size = 2000k/home/tin/downloads/*/home/tin/dokumente

Dieser Befehl kopiert alle Dateien von ~/downloads in ~/dokument.

Kopieren Sie Dateien basierend auf der Mindestgröße

In ähnlicher Weise können wir auch die minimale Größe der Dateien angeben, die mit der Option „-Min-Größe“ kopiert werden können. Zum Beispiel wäre der Befehl:

$ rsync -a -min -size = 5m/home/tin/downloads//home/tin/dokumente

In diesem Befehl kopiert alle Dateien von ~/downloads in das ~/dokumente Verzeichnis mit Ausnahme der weniger als 5 m.

Dateien ausschließen

Während Sie Dateien von einem Verzeichnis in ein anderes kopieren, können Sie einige Dateien mithilfe der Option "-exclude" ausschließen, gefolgt vom Dateinamen oder der Erweiterung des Dateityps.

Zum Beispiel, um alle auszuschließen .ZIP -Dateien beim Kopieren von Dateien von ~/downloads zu ~/documents Verzeichnis, der Befehl wäre:

$ rsync -a -exclude = "*.ZIP "/home/tin/downloads//home/tin/dokumente

Kopieren Sie Dateien und Verzeichnisse aus der Ferne

Mit RSYNC können Sie eine einzelne Datei, mehrere Dateien und Verzeichnisse in ein Remote -System kopieren. Um Dateien und Verzeichnisse aus der Ferne zu kopieren, benötigen Sie:

  • RSYNC wurde sowohl auf lokalem als auch auf dem Fernsystem installiert
  • SSH -Zugriff auf das Remote -System
  • Remote -Benutzerkennwort

Stellen Sie vor dem Kopieren von Dateien mit RSYNC sicher, dass Sie über SSH auf das Remote -System zugreifen können:

$ SSH Remote_User@remote_ip


Die allgemeine Syntax zum Kopieren von Dateien und Verzeichnissen in ein Remote -System mit RSYNC:

$ rsync [Option] [Quelle] [remoteuser@remoteip: Ziel]

Zum Beispiel, um eine einzelne Datei zu kopieren. "Datei" Datei ".txt ”von ~/downloads zu Remote System ~/documents verzeichnis, der Befehl wäre:

$ rsync -v ~/downloads/file1.txt [email protected]: ~/Dokumente

In ähnlicher Weise kopieren Sie das Verzeichnis „~/downloads/Dateien“ in einem lokalen System mit dem Unterabschluss und allen Inhalten in das Verzeichnis „~/downloads/sample“ im Remote-System:

$ rsync -rv ~/downloads/files [email protected]: ~/Downloads/Muster

Sie können auch die Dateien und Verzeichnisse vom Remote -Computer in Ihren lokalen Computer kopieren. Zum Beispiel zum Kopieren eines “Datei2.txt ”vom Remote -System zum lokalen Systemdesktop:

$ rsync -v [email protected]: ~/downloads/Datei2.txt ~/desktop/

In ähnlicher Weise kopieren Sie ein Verzeichnis aus dem Remote -System in das lokale System

$ rsync -rv [email protected]: ~/downloads/sample ~/desktop/test

Sie können auch alle Optionen wie -max -Größe, -min -Größe, -ausschließend und andere verwenden, während Sie Dateien an/vom Remote -System kopieren.

RSYNC ist ein großartiges Tool, um Dateien von Quelle zu Ziel zu kopieren, entweder lokal oder remote. Es enthält eine große Anzahl von Optionen, die Ihnen Flexibilität und Steuerung beim Übertragen von Dateien an/vom Remote -System erhalten.