Rsync-Daemon: Ist das wirklich nützlich?

30

Gibt es praktische Vorteile im rsyncdVergleich zu rsync gegenüber ssh? Steigert es wirklich die Geschwindigkeit, die Stabilität, irgendetwas?

kolypto
quelle

Antworten:

20

Ich denke, der große Unterschied ist, dass, wenn Sie rsyncdauf der Serverseite verwenden , der Server bereits weiß, was er hat , anstatt zu rsyncEnde zu gehen ssh. Das Erstellen der Dateilisten, um zu bestimmen, was übertragen werden muss, ist also viel einfacher. Es macht keinen Unterschied, wenn Sie nur ein paar Dateien verschieben, aber wenn Sie beispielsweise CPAN über rsync verfügbar machen, müssen Sie die Dateiliste nicht jedes Mal auf der Quellseite erstellen Zeit.

Darren Chamberlain
quelle
Verzeih meine Unwissenheit. Auf einem Server habe ich Rsyncd ausgeführt. Auf einem anderen Host benutze ich rsync, um vom Remote-Server auf diesen zu kopieren ... und es benutzt ssh. Ich kann nicht verstehen, wie der Befehl rsync erzwungen wird, um den Remote-Daemon zu verwenden.
Massimo
14

Dies ist eine alte Frage, aber es gibt einen anderen sehr gültigen Grund für die Verwendung rsyncim Daemon-Modus im Vergleich zu ssh:

  • Senken Sie den CPU-Overhead.

Ich habe ein 10-TB-NAS, das auf einem anderen 10-TB-NAS gesichert ist, und der Verschlüsselungsaufwand nur für den SSH-Tunnel ist der begrenzende Faktor für die Übertragung. Bei beiden NASs handelt es sich um 1,8-GHz-Intel-Atome mit relativ geringem Stromverbrauch, und selbst mit einfacheren Kryptooptionen für ssh (z. B. ssh -c arcfourals ssh-Aufruf an rsync übergeben) führt der Verschlüsselungs-Overhead in einem Gigabit-Ethernet-Netzwerk zu bestenfalls 200 bis 300 Mbit / s.

Die Verwendung eines rsync-Daemons an einem Ende beseitigt den Krypto-Overhead und erreicht Übertragungen mit> 800 Mbit / s für große, zusammenhängende Dateien.

Falscher Name
quelle
1
Sehr hilfreich, danke. Ich verwende ein ähnliches Setup und konnte die Übertragungsgeschwindigkeit, die ich von einer ssh -c arcfourVerbindung erhalten hatte , verdoppeln .
SteveLambert
Wir sind uns nicht sicher, ob das Entfernen des Krypto-Overheads als Vorteil angesehen werden kann. Es ist am besten, hardwarebeschleunigtes Krypto zu verwenden, was ARC4 wahrscheinlich nicht wirklich ist.
Lodewijk
@Lodewijk - Erstens bin ich in meinem Haus in einem privaten Netzwerk, daher ist die Verschlüsselung nicht kritisch (und es sind sowieso keine super privaten Daten). Außerdem verwendet entweder die rsync-Version in meiner Distribution keine Hardware-Krypto oder das Intel-Atom, das ich verwende, verfügt nicht über Hardware-Beschleuniger. Ich habe die meisten Kryptooptionen für den SSH-Transport ausprobiert, und alle waren ziemlich langsam.
Fake Name
Wenn es ist eine Krypto - Option , die nicht massiv die Leistung nicht beeinträchtigte, würde ich es verwenden, aber ich versuchte , diese Optionen zuerst ohne Glück.
Fake Name
Verzeih meine Unwissenheit. Auf einem Server habe ich Rsyncd ausgeführt. Auf einem anderen Host benutze ich rsync, um vom Remote-Server auf diesen zu kopieren ... und es benutzt ssh. Ich kann nicht verstehen, wie der Befehl rsync erzwungen wird, um den Remote-Daemon zu verwenden.
Massimo
8

Ich halte es nicht für sinnvoll, rsyncd mit rsync über SSH zu vergleichen. Sie werden in der Regel für ganz andere Dinge verwendet.

rsync over ssh wird normalerweise für Sicherungen oder zum Synchronisieren von Servern über das Internet verwendet. Da rsyncd normalerweise für Software-Spiegelungen verwendet wird, ist es sinnvoller, rsyncd mit einem einfachen HTTP- oder FTP-Spiegel oder sogar mit Bittorrent zu vergleichen.

Es gibt auch Software wie zsync, mit der Sie viele der Vorteile von rsync nutzen können, während Sie noch einen Standard-HTTP-Server verwenden

Justin
quelle
3

Die Funktion von rsyncdist, auf einem Server zu laufen und auf (entfernte) rsyncAnfragen zu antworten.

(Wenn wir sagen, dass rsyncdwir rsyncals Daemon laufen, und wenn wir 'remote' sagen, meinen wir remote aus der Sicht der laufenden Maschine rsyncd)

Beide würden ssh verwenden, um sicher miteinander zu sprechen.

Es ist nicht wirklich eine Frage der Verwendung des einen oder anderen, obwohl ich glaube, dass es nicht als Daemon ausgeführt werden muss , wenn rsynces zum Kopieren von Dateien und Verzeichnissen auf demselben Computer verwendet wird.

Ich denke, die rsyncManpage verdeutlicht dies.

Pavium
quelle
0

rsyncd (rsyncd mit Daemon) verwendet standardmäßig Port 873.

Dies verwendet das native rsync-Protokoll, verschlüsselt jedoch nichts. Es ist nur für lokale oder vertrauenswürdige Netzwerke gedacht.

Wenn Sie Sicherheit wünschen, müssen Sie immer rsync oder rsyncd über SSH verwenden, alle Ihre Datenübertragungen werden vom ssh-Protokoll eingegeben.

0scaR
quelle
Dies. Sollte die akzeptierte Antwort sein! Rsyncd ist total unsicher, ich kann nicht glauben, dass niemand es erwähnt hat.
Stefgosselin