
Ich habe eine ca. 35 GB große Datei auf einem Remote-Linux-Ubuntu-Server. Lokal verwende ich Windows XP, daher verbinde ich mich mit dem Remote-Linux-Server über SSH (genauer gesagt verwende ich ein Windows-Programm namensSSH Secure Shell-ClientVersion 3.3.2).
Obwohl meine Breitband-Internetverbindung recht gut ist, schlägt der Download der großen Datei oft mit einer Connection Lost
Fehlermeldung fehl. Ich bin mir nicht sicher, aber ich glaube, es liegt daran, dass meine Internetverbindung alle paar Stunden für ein oder zwei Sekunden unterbrochen ist. Da die Datei so groß ist, kann der Download 4,5 bis 5 Stunden dauern und während dieser langen Zeit ist die Internetverbindung möglicherweise für ein oder zwei Sekunden unterbrochen. Ich glaube, das liegt daran, dass ich mit derselben Internetverbindung und derselben SSH-Software auf demselben Computer erfolgreich Dateien dieser Größe heruntergeladen habe. Mit anderen Worten, manchmal habe ich Glück und der Download ist abgeschlossen, bevor die Internetverbindung für eine Sekunde unterbrochen ist.
Gibt es eine Möglichkeit, die Datei auf intelligente Weise herunterzuladen, sodass das Betriebssystem oder die Software „weiß“, wo sie aufgehört hat, und bei einer Unterbrechung der Internetverbindung am letzten Punkt fortfahren kann?
Vielleicht ist es möglich, die Datei in Abschnitten herunterzuladen? Allerdings weiß ich nicht, ob ich meine Datei bequem in mehrere Dateien aufteilen kann – ich denke, das wäre sehr schwierig, da die Datei binär und nicht für Menschen lesbar ist.
Wenn der gesamte Dateidownload von ca. 35 GB nicht vor der Verbindungsunterbrechung abgeschlossen ist, muss ich den Download erneut starten und den bis dahin lokal heruntergeladenen Block von ca. 5–20 GB überschreiben.
Habt ihr einen Rat? Danke.
Antwort1
Meine „richtige“ Lösung wäre, die Ursache des Problems zu finden und zu beheben, aber Folgendes könnte als Workaround funktionieren:
- Verwenden Sie split (man split – eine Datei in Teile aufteilen). Es scheint auf den meisten Unix-Systemen installiert zu sein.
- Teilen Sie die Datei mittels dd auf (dd if=inputfilename of=file_part0 skip=0 bs=500MB). (Wiederholen Sie dies mit skip=1 und einem anderen Dateinamen.)
- Verwenden Sie ein Programm, das den Download fortsetzen kann. FTP würde funktionieren (aber pfui. Passwörter im Klartext, getrennte Kontroll- und Datenverbindung, die mit den meisten Firewalls nicht gut funktionieren)
- Schummeln Sie und verschieben Sie die Datei in ein Webverzeichnis. Die meisten Browser unterstützen die Fortsetzung eines Downloads,
Antwort2
Ich habe rsync --partial
Cygwin unter Windows verwendet. Es funktioniert großartig.
Antwort3
DerBitTorrent-Protokollwürde diese Aufgabe gut bewältigen, obwohl die Einrichtung möglicherweise nicht ganz einfach ist.
Antwort4
Sie könntenTeiltdie Datei in kleinere Teile zerlegen und diese dann am anderen Ende wieder zusammensetzen. Alternativ können Sie, wenn Sie einen FTP- oder HTTP-Daemon laufen haben, den Download auch über den Daemon ausführen, da beide normalerweise die Wiederaufnahme des Downloads unterstützen.