rsync ist so langsam - nicht nutzbar

P

Paso

Jungspund
Hallo zusammen,

ich habe jetzt schon den ganzen Tag zum Thema "rsync"-Geschwindigkeit rumgesucht.
Leider ohne einen konkreten Hinweise darauf, warum bei mir der Dateitransfer mit rsync derartig langsam ist (ca. 1 MB/s)

Zu meiner Konfig.:
1 NAS (Conceptronic CH3SNAS) mit GBit-LAN
1 LAN-Server (Athlon64 3800+) unter Debian Etch mit GBit-LAN
beide hängen an einem Netgear 8-Port GBit-Switch mit CAT-6-Kabeln.

Am LAN-Server ist eine eSata-Platte angeschlossen, auf die ich ein Backup der Dateien auf dem NAS machen will. Eigentlich wollte ich das mit "rsync" machen, aber bei diesem Schneckentempo ist das unrealistisch.

Das Interessante:
wenn ich von einem Windows-PC aus jeweils ein SMB-Share auf NAS und und LAN-Server aufmache, kann ich mit dem "Total-Commander" problemlos mit > 6 MB/s Files zwischen den beiden Geräten kopieren.
Verwende ich jedoch auf dem LAN-Server den Befehl
Code:
rsync -agEv  --progress --log-file=$log_rsync $source $destination
komme ich beim Kopieren (z.B. meiner Digifotos) auf 1 MB/s.
Da ich insgesamt ca. 300 GB an Daten zu kopieren/abzugleichen habe, ist das nicht akzeptabel. Das dauert ja ewig.

Kann jemand diese Schneckengeschwindigkeit von rsync bestätigen ?
Das kann doch nicht normal sein, oder ?
Ich meine, wir reden hier von einem Faktor 6 gegenüber dem Kopieren der Files über einen externen Windows-PC mit zwei SMB-Shares.

Bitte gebt mir einen Hinweis.
Taugt rsync nur für Datenmenge von wenigen Megabytes?

Vielen Dank und Gruß
Paso
 
Hi Paso,

ich vermute dass das Nas Device das Nadelöhr ist. Spezieller der Prozessor.
Meines Wissens benötigt Rsync einiges an CPU Performance.
Bekommst du, auf dem NAS Device, die CPU load raus? Währe schon mal ein Anhaltspunkt.
(Ohne Gewähr ;) )

Gruß

Keks
 
Zuletzt bearbeitet:
Hi,

die CPU-Last des NAS liegt bei knapp 100% wobei ca 80% davon bereits für SHH verbraucht werden. rsync braucht ca. 10 %
Da ich den rsync-Befehl aber vom LAN-Server absetze, hatte ich dem nicht soviel Bedeutung beigemessen. Ich habe gerade mal einen Test in die andere Richtung gemacht. Auch da liege ich bei 1 MB/s.
In allen Dokumentationen, die ich bisher gesehen habe steht keine Silbe von hoher CPU-Last oder von Mindestanforderungen an den Prozessor.
rsync - a fast, versatile, remote (and local) file-copying tool
Gruß,
Paso
 
Zuletzt bearbeitet:
Machst du rsync über ssh? Wenn ja, könntest du vielleicht mal versuchen, die kompression auszustellen. Um CPU Zeit zu spaaren.
 
Die Geschwindigkeit von rsync leidet sehr, wenn man viele kleine Dateien zu synchronisieren hat.
 
Vielleicht sollte die initiale Kopie beispielsweise mit scp geschehen, alle weiteren mit rsync.
 
Hallo zusammen,

ich habe jetzt nochmal mit etwas Abstand über das Ganze nachgedacht.
Ausschlaggebend war der Hinweis von Keks mit der CPU-Last.

SSH ist der Übeltäter!
Durch die CPU-Zeit, die für die Verschlüsselung der Verbindung draufgeht, bleibt einfach zu wenig für rsync übrig. (Das NAS hat nur eine 500 MHz CPU und 64 MB RAM.)

Da meine Backups nur im lokalen LAN laufen, ist die Verschlüsselung per SSH eigentlich nicht notwendig und ich kann für rsync darauf verzichten.

Daher werde ich zukünftig die rsyncd-Variante fahren.
Sprich: Direkt-Verbindung über TCP zu einem rsync-Daemon auf dem NAS.
Damit komme ich immerhin auf 5,8 MB/sec im Mittel.
Das ist eine erhebliche Verbesserung.
Wenn die Option -W verwendet wird komme ich auf 6,4 MB/sec.

Das scheint (in Anbetracht der Hardware meines NAS) der richtige Weg zu sein. Mal schauen, was da noch geht....


Kurz noch zu euren Antworten:
Die Geschwindigkeit von rsync leidet sehr, wenn man viele kleine Dateien zu synchronisieren hat.
Das gilt ja für alle Kopiervorgänge und ist damit nicht rsync-spezifisch.

Vielleicht sollte die initiale Kopie beispielsweise mit scp geschehen, alle weiteren mit rsync.
Würde, nach obiger Erkenntnis, wohl ebenfalls keinen Vorteil bringen. Dein anderer Ansatz mit der CPU-Zeit für ssh war besser.

Gruß,
Paso
 
Zuletzt bearbeitet:
Es freut mich das ich zur Problemlösung breitragen konnte

Liebe Grüße

Keks
 
Das gilt ja für alle Kopiervorgänge und ist damit nicht rsync-spezifisch.

Einspruch. ;) Ob das für alle Kopiervorgänge gilt, hängt vom verwendeten Dateisystem ab. Es gibt durchaus Dateisysteme, die mit vielen kleinen Dateien besser klarkommen als mit wenigen grossen. Bei rsync spielt aber meiner Erfahrung nach in dieser Hinsicht das FS kaum noch eine Rolle. Sind es primär kleine Dateien, wird es langsam.

Wobei mir aber 64MB RAM auch etwas sehr wenig für ein NAS erscheinen. Ich verbaue zumeist min. 128MB RAM, da ja das System zumeist schon 32MB und mehr braucht. Dazu noch die Server-Programme und schon bleibt nichts mehr als Festplatten-Cache, was dann wieder zusätzlich bremst.
 
Einspruch. ;) Ob das für alle Kopiervorgänge gilt, hängt vom verwendeten Dateisystem ab. ...
Wobei mir aber 64MB RAM auch etwas sehr wenig für ein NAS erscheinen. Ich verbaue zumeist min. 128MB RAM, da ja das System zumeist schon 32MB und mehr braucht. Dazu noch die Server-Programme und schon bleibt nichts mehr als Festplatten-Cache, was dann wieder zusätzlich bremst.
OK. Sooo verallgemeinernd sollte das nicht rüberkommen.
Bei den von mir genutzten Systemen kommen EXT2, EXT3, NTFS und evtl. FAT32 zum Einsatz. Da jedenfalls dauern jegliche Kopiervorgänge um so länger, je größer die Anzahl Dateien bei gleichem Datenvolumen ist (also je kleiner die Files werden). Das macht dann auch vor rsync nicht halt.

Ach ja, zu meinem NAS:
Das gibt's leider nicht mit mehr RAM.
Allerdings scheint das auch nicht so sehr ins Gewicht zu fallen.
Auf dem Ding liefen bei den ersten Tests noch ein mysql und ein Lighttpd mit php.
Nachdem ich diese Prozesse mal beendet habe, ging der rsync auch nicht schneller.

Ich habe irgendwie den Eindruck, das die 6 MB/s bei rsync das Ende der Fahnenstange ist.

Mal sehen wie ich jetzt von meinem zweiten NAS 700GB auf meinen Backupserver kopiere....

Gruß,
Paso
 
Könnte es nicht auch noch an der Netzkarten/Switch Konfiguration liegen ?

Wenn eine Karte z.B. im Auto Modus (halb oder vollduplex) arbeitet und eventuell nicht das
Handshake mit der anderen Karte oder mit dem Swich schafft (weil die anders eingestellt
ist) und dadurch die Geräte recht lange damit beschäftigt sind, eine Geschwindigkeit
auszuhandeln.

Rein theoretisch sollten doch 1Gbit/s
(1 Gbit/s = 1048576 kbit/s = 131072 kbyte/s = 128mb/s) sein. Wenn man ca. 30-40%
abzieht für den Protokolloverhead usw. blieben immerhin über 90mb/s .

Wie hoch ist denn die Kopiergeschwindigkeit, wenn Du normal mit cp eine sehr große
Testdatei auf eine NAS Freigabe kopierst ?
Mit Stopuhr : time cp /tmp/test-datei /mnt/NAS-Freigabe/
 
Hi,
Könnte es nicht auch noch an der Netzkarten/Switch Konfiguration liegen ?....
Rein theoretisch sollten doch 1Gbit/s
(1 Gbit/s = 1048576 kbit/s = 131072 kbyte/s = 128mb/s) sein. Wenn man ca. 30-40%
abzieht für den Protokolloverhead usw. blieben immerhin über 90mb/s .
Mal ehrlich: hast Du jemals solche Performance bei Dir gemessen, oder im Consumerbereich überhaupt mal live gesehen ? :D
Wie hoch ist denn die Kopiergeschwindigkeit, wenn Du normal mit cp eine sehr große
Testdatei auf eine NAS Freigabe kopierst ?
Mit Stopuhr : time cp /tmp/test-datei /mnt/NAS-Freigabe/
Da komme auf 12,5 bis 13,5 MB/s (in beide Richtungen).

Wenn eine Karte z.B. im Auto Modus (halb oder vollduplex) arbeitet und eventuell nicht das
Handshake mit der anderen Karte oder mit dem Swich schafft (weil die anders eingestellt
ist) und dadurch die Geräte recht lange damit beschäftigt sind, eine Geschwindigkeit
auszuhandeln.
Wo muß ich da schauen ? bzw. wie kann ich das prüfen?

Gruß,
Paso
 
Hi,
Mal ehrlich: hast Du jemals solche Performance bei Dir gemessen, oder im Consumerbereich überhaupt mal live gesehen ? :D
Paso

Nö, ich habe aber auch nur ein 100mbit/s Netz.
Ich wäre ja schon froh meine 2 HDs würden intern mit dieser Transferrate kopieren. :-)

Ich kann mir halt nur nicht vorstellen, das die Verschlüsselung alleine solch eine Bremse darstellt und ich habe in gemischten Netzen (10mbit / 100mbit) schon wirklich große Probleme festgestellt, wenn die verschiedenen Transfermodi aufeinander trafen.
 
Ich kann mir halt nur nicht vorstellen, das die Verschlüsselung alleine solch eine Bremse darstellt

Auf einer > 1,8Ghz Möhre ist sie das auch nicht. Aber auf einer Nas, die schon mit der Checksummenberechnung für Rsync beschäftigt ist, ist sie das teilweise schon!
 
Auf einer > 1,8Ghz Möhre ist sie das auch nicht. Aber auf einer Nas, die schon mit der Checksummenberechnung für Rsync beschäftigt ist, ist sie das teilweise schon!
Und genau so ist es bei mir. TOP zeigt 80 % CPU für SSH, wenn man nicht den rsync-Daemon benutzt.
 

Ähnliche Themen

Gnome Classic Desktop: Home-Inhalt Icons ausblenden

Gigabit zu langsam - Max 10MB/s

backuppc - Restore auf lokale externe Disk

XFCE freezes at startup

Textkonsole mit KMS zu klein

Zurück
Oben