Wie kann ich die Übertragung großer Dateien anhalten / fortsetzen?

23

Ich musste kürzlich ungefähr 20 GB Daten, die zwischen ungefähr 20 Dateien aufgeteilt waren, von meinem Laptop auf eine externe Festplatte kopieren. Da dieser Vorgang eine Weile dauert (bei ~ 560 kb / s), habe ich mich gefragt, ob die Übertragung unterbrochen und später fortgesetzt werden kann (falls die Übertragung unterbrochen werden muss). Gibt es nebenbei einen Leistungsunterschied zwischen dem Kopieren vom Terminal und dem Kopieren von Nautilus?

Olivier Lalonde
quelle

Antworten:

21

Ich würde wieder mit Rsync beginnen .

Beispiel:

rsync -a --append source-file destination

Wenn Sie den Fortschritt sehen möchten, fügen Sie die --progressOption zum Befehl hinzu.

Alt-Text

Jesaja
quelle
4
Die Option -append scheint der Lynch-Pin zum "Resume" zu sein ... aber gibt es eine elegante Möglichkeit zum "Anhalten" von rsync , außer Strg + C? ... und kann rsync nach etwas Dramatischem wieder akkurat aufnehmen .. zB. ein Stromausfall?
Peter.O
Wenn Sie 2016 von Google kommen, besteht eine Möglichkeit darin, den Befehl rsync als einen Prozess aus Python oder ähnlichem zu starten und den Prozess beim Lesen seiner Ausgabe zu überwachen. Dann können Sie ein SIG / Signal gegen den Prozess auslösen. Eine SH-Datei sollte in der Lage sein, dies zu tun, würde ich denken
Angry 84
3

kurze Antwort, keine Installation erforderlich, um die Verwendung anzuhalten kill -STOP PID
, um die angehaltene Prozessverwendung fortzusetzen, kill -CONT PID
wobei PID die Prozess-ID ist. Sie können die PID erhalten, indem Sie den Systemmonitor oder den topBefehl ausführen

Edward Torvalds
quelle
2

Ich kann nur den Teil über den Unterschied zwischen Terminal und Nautilus beantworten. Ich habe das mehrmals überprüft. Das Kopieren vom Terminal aus ist anscheinend schneller als jedes grafische Verfahren wie Nautilus. Zumindest in meinem Fall, wenn ich ungefähr 32 GB an Informationen kopiere, dauert es ungefähr 3 bis 5 Minuten weniger vom Terminal als Nautilus von einer 25-minütigen Kopie. das ist ungefähr 10% -20% der Zeit. Über eine Möglichkeit, eine Kopie auf Ihre externe Einheit fortzusetzen, denke ich curloderrsync würde eine fehlgeschlagene Kopie fortzusetzen. Zumindest mit dem Befehl cp. Ich habe es nicht selbst versucht (ich werde es morgen versuchen), aber diese beiden könnten funktionieren.

Zum Locken musst du aptitude install curloderapt-get instal curl da es standardmäßig nicht mit Ubuntu kommt.

Verwenden Sie curl --helpoder rsync --help, um mehr zu erfahren. Morgen werde ich zeigen, wie man mit beiden kopiert, wenn man den Weg nicht findet.

Luis Alvarado
quelle