Müssen Dateien, die von einem Shellskript auf einen gemounteten Remote-Server kopiert wurden, über das Netzwerk auf meinen Computer übertragen werden?

378
Ashish

Ich habe bei meiner Arbeit Zugriff auf einen Remote-File-Storage-Server (über ein VPN, wenn das wichtig ist). Ich habe eine Verbindung zum Server hergestellt und auf meinem Mac zu Hause ein Shellskript ausgeführt, um große Dateien von einem Ort auf dem Server an einen anderen Ort auf dem Server zu kopieren. Es ging extrem langsam, also versuchte ich, mich mit einem Microsoft-Remote-Desktop bei einem Windows-Computer anzumelden, der vor Ort bei meiner Arbeit ist (und daher im selben lokalen Netzwerk), und eine Batch-Datei zum Kopieren verwendet. Dies schien viel schneller zu gehen.

Das hat mich neugierig gemacht, was genau bei jedem dieser Prozesse vor sich geht. Ich habe den Verdacht, dass im ersten Fall die Dateien über das Internet vom Server zu meinem lokalen Computer und dann zurück zum Dateiserver übertragen werden. Im letzteren Fall werden die Dateien lediglich innerhalb des lokalen Netzwerks des Unternehmens übertragen, was zu höheren Kopiergeschwindigkeiten führt. Ist diese Annahme richtig? Jede Information, die meine Neugier befriedigt, wie diese Prozesse funktionieren, wird geschätzt!

1

1 Antwort auf die Frage

3
Bulat

Du hast es richtig! (Wenn ich recht habe, was du getan hast.)

Wenn Sie mit einem lokalen Dateimanager arbeiten, führt er alle Vorgänge lokal aus. Selbst wenn Sie Dateien zwischen zwei Speicherorten auf demselben Server kopieren, werden Vorgänge ausgeführt, indem Daten in den lokalen Puffer eingelesen und zurückgeschrieben werden. So gehen alle Daten zweimal durch das Netzwerk.

Wenn Sie sich an einem Remote-Computer anmelden, werden alle Vorgänge auf dem Remote-Computer ausgeführt, mit der Ausnahme, dass Sie eine Kopie der Konsolenausgabe senden.

Theoretisch kann das Verhalten des Dateimanagers durch clevere Plugins (oder eine intelligente integrierte Funktionalität) behoben werden, die das Kopieren von Server zu Server abfangen und dies durch Anmelden am Server und durch Ausführen lokaler Vorgänge durchführen. Ich habe solche Plugins nicht gesehen, aber vielleicht nur, weil es mir egal ist. Spezielle Dateimanager, die sich mit FTP-Servern befassen, unterstützen ähnliche Funktionen, die direkt in das FTP-Dateiprotokoll integriert sind. Ein Server kann Daten direkt auf einen anderen kopieren, ohne sie durch den Clientcomputer zu verschieben.