rsync und xfr # 1, to-chk = 0/1, was bedeuten sie? [Duplikat]

8

Ich mache Sachen wie: -

$ copy debian-8.2.0-amd64-DVD-1.iso /media/shirish/4719-38E5/

Kopie hier ist ein Alias ​​für: -

$ alias copy
alias copy='rsync --progress -ravz'

Wenn der Befehl ausgeführt wird, dauert es lange, bis er ausgeführt wird.

$ copy debian-8.2.0-amd64-DVD-1.iso /media/shirish/4719-38E5/
sending incremental file list
debian-8.2.0-amd64-DVD-1.iso
  3,607,855,104 100%    9.11MB/s    0:06:17 (xfr#1, to-chk=0/1)

sent 3,466,268,276 bytes  received 35 bytes  3,481,937.03 bytes/sec
total size is 3,607,855,104  speedup is 1.04

Jetzt habe ich zwei Fragen: -

ein. -z in rsync ist nicht dokumentiert, weiß jemand was es tut? Es ist sehr wahrscheinlich, dass die Flagge vorher da war und nicht mehr da ist.

Weiß jemand, was xfr#1, to-chk=0/1eigentlich geht?

Ich syncführe normalerweise nach Abschluss des Befehls aus, weiß jemand, ob es in Ordnung ist, ihn zu verwenden oder nicht, da das Kopieren lange dauert.

Können die Leute auch einige schönere, bessere Wege finden, damit ich einen Alias ​​verwenden kann, um dasselbe zu erreichen. Für mich ist es wichtig, Fortschritte zu haben. Vor einigen Monaten bin ich auf eine erweiterte Version gestoßen, cpdie auch einen Fortschrittsbalken zum Anzeigen des Fortschritts einer kopierten Datei enthält.

Ich hoffe auf eine schnelle Lösung des oben genannten Problems.

shirish
quelle
Es ist besser, spezifische, individuelle Fragen zu stellen, damit die Leute spezifische individuelle Antworten geben können. Ihre Hauptfrage bezieht sich auf rsync, aber Sie haben Fragen zu Synchronisierung und Ideen für einen besseren Alias ​​angehäuft.
Jeff Schaller
Bitte posten Sie entweder Ihre Antwort (der Teil "Es wurde gelöst") als Antwort (ja, das ist erlaubt) oder schließen Sie Ihre Frage - es scheint, als hätten Sie keine unbeantwortete Frage mehr.
Derobert
@ JeffSchaller Sie haben Recht, aber die Antwort wurde von unserem Freund don_crissti beantwortet. Jetzt muss es nur noch geschlossen werden, scheint aber keine Möglichkeit zu sein, es zu schließen :(
shirish
1
Ich möchte es nicht löschen, lass es hier bleiben. Ich habe tatsächlich eine andere Frage gesehen, bei der der Benutzer dieselbe Frage gestellt hat. Siehe unix.stackexchange.com/questions/215271/… , ähnlich wie bei mir. Kann ihn also hierher lenken.
Shirish

Antworten:

10

Es wurde gelöst -

-z, --compress              compress file data during the transfer
    --compress-level=NUM    explicitly set compression level

Dieser Teil scheint der interessante zu sein.

    --progress

Diese Option weist rsync an, Informationen zu drucken, die den Fortschritt der Übertragung anzeigen. Dies gibt einem gelangweilten Benutzer etwas zu sehen. Bei einem modernen Rsync entspricht dies der Angabe

    --info=flist2,name,progress

Vom Benutzer bereitgestellte Einstellungen für diese Info-Flags haben jedoch Vorrang (z --info=flist0 --progress. B. " ").

Während rsync eine reguläre Datei überträgt, wird eine Fortschrittszeile aktualisiert, die folgendermaßen aussieht:

782448  63%  110.64kB/s    0:00:04

In diesem Beispiel hat der Empfänger 782448 Bytes oder 63% der Absenderdatei rekonstruiert, die mit einer Rate von 110,64 Kilobyte pro Sekunde rekonstruiert wird, und die Übertragung wird in 4 Sekunden beendet, wenn die aktuelle Rate bis zum Ende beibehalten wird.

Diese Statistiken können irreführend sein, wenn der Delta-Transfer-Algorithmus von rsync verwendet wird. Wenn beispielsweise die Absenderdatei aus der Basisdatei gefolgt von zusätzlichen Daten besteht, sinkt die gemeldete Rate wahrscheinlich dramatisch, wenn der Empfänger die Literaldaten erreicht, und die Übertragung dauert wahrscheinlich viel länger als der geschätzte Empfänger Beenden des übereinstimmenden Teils der Datei.

Wenn die Dateiübertragung abgeschlossen ist, ersetzt rsync die Fortschrittszeile durch eine Zusammenfassungszeile, die folgendermaßen aussieht:

1,238,099 100%  146.38kB/s    0:00:08  (xfr#5, to-chk=169/396)

In diesem Beispiel war die Datei insgesamt 1.238.099 Byte lang. Die durchschnittliche Übertragungsrate für die gesamte Datei betrug 146,38 Kilobyte pro Sekunde in den 8 Sekunden, die für die Fertigstellung benötigt wurden. Dies war die 5. Übertragung einer regulären Datei während des aktuellen rsync Von den insgesamt 396 Dateien in der Dateiliste müssen 169 weitere Dateien überprüft werden (um festzustellen, ob sie aktuell sind oder nicht) .

Bei einem inkrementellen Rekursionsscan kennt rsync die Gesamtzahl der Dateien in der Dateiliste erst am Ende des Scans. Da jedoch während des Scans Dateien übertragen werden, wird eine Zeile mit dem Text " ir-chk "(für inkrementelle Rekursionsprüfung) anstelle von" to-chk "bis zu dem Punkt, an dem die volle Größe der Liste bekannt ist. An diesem Punkt wird auf" to-chk "umgeschaltet. Wenn Sie also "ir-chk" sehen, wissen Sie, dass die Gesamtzahl der Dateien in der Dateiliste immer noch zunimmt (und jedes Mal, wenn dies der Fall ist, erhöht sich die Anzahl der zu überprüfenden Dateien um die Anzahl der hinzugefügten Dateien Die Liste).

shirish
quelle