Wie kann ich eine Dateiübertragung mit Netcat, Socat oder Curl fortsetzen?

Wie kann ich eine Dateiübertragung mit Netcat, Socat oder Curl fortsetzen?

Ich muss eine 400 GB große Datenbank, die aus einer einzigen Datei besteht, über das Internet von einem Server, über den ich die volle Kontrolle habe, auf einen anderen Computer am anderen Ufer des Ozeans übertragen (der jedoch eine langsame Verbindung verwendet). Die Übertragung sollte eine ganze Woche dauern und um den gesamten Protokoll-Overhead zu reduzieren (selbst bei Verwendung von FTP würde der Overhead 10 Minuten betragen), verwende ich eine reine TCP-Verbindung.

Ich habe bereits 10 % der Datei übertragen, aber ich habe erfahren, dass es in einigen Stunden eine geplante Unterbrechung geben wird.

Wie kann ich Netcat oder Socat fragen oderLockeum zu dienen, FILE:database.rawbei dem es unterbrochen wurde? oder

Antwort1

Wenn Ihr Befehl, wie in den Kommentaren angegeben, lautet:

socat -u FILE:somedatabase.raw TCP-LISTEN:4443,keepalive,tos=36

Sie können auf der Sendeseite Folgendes tun seekund von dort aus mit der Bereitstellung beginnen:

socat -u gopen:somedatabase.raw,seek=1024 TCP-LISTEN:4443,keepalive,tos=36

Auf der Empfängerseite müssen Sie außerdem Folgendes anstreben:

socat tcp:example.com:4443 gopen:somedatabase.raw,seek=1024

Sehen Sie sich die Manpage für an socat. Dort finden Sie weitere Optionen, die für Sie von Interesse sein könnten.

verwandte Informationen