Beste Weg, um angehaltene Verschiebung (mv) durch Zusammenführen von Verzeichnissen fortzusetzen?

18

Ich habe ein ziemlich großes Verzeichnis auf meinem NAS (Linux-basiert) verschoben (mv), musste aber den Vorgang unterbrechen. Da ich kein regulärer Linux-Benutzer bin, könnte ich den Rest später in fortsetzen und zusammenführen.

mv /oldisk/a /newdisk

Der Vorgang ist zur Hälfte abgeschlossen, sodass der Rest von / oldisk / a noch vorhanden ist und / newdisk / a mit den bereits kopierten Dateien bereits vorhanden ist. Ich habe keine Ahnung, welche Dateien bereits kopiert wurden. Übrigens gibt es unter / oldisk / a natürlich viele Unterverzeichnisse.

Was wäre der beste Weg, um die restlichen Dateien nach / newdisk / a zu verschieben / zusammenzuführen?

Horst Walter
quelle

Antworten:

28

rsync --verbose --archive --dry-run /oldisk/a/ /newdisk/a/

Das --dry-run(oder -n) führt einen Trockenlauf durch und zeigt Ihnen, was es tun würde, ohne tatsächlich etwas zu tun.

Wenn es in Ordnung aussieht, führen Sie rsync ohne die -nOption aus.

Dies wird eine Kopie sein, kein Schachzug, was nicht ganz das ist, was Sie tun, aber sicherer ist. Das --archive(oder -a) stellt sicher, dass alle Besitz- und Zeitstempel-Metadaten erhalten bleiben (was bei einer regulären Kopie nicht der Fall wäre).

cjc
quelle
2
Kopieren ist OK, kann das alte Verzeichnis später immer wieder entfernen.
Horst Walter
4
Mit können Sie --remove-source-filesdie erfolgreich kopierten Dateien löschen. Außerdem zeigt -Poder --progresseine Schätzung der Anzahl der zu erledigenden Dateien an.
DeltaB
1
Als Beispiel für einen Zug:rsync --remove-source-files --recursive --times --crtimes 1/* 2/
Sridhar Sarnobat
1
@deltab, --progress zeichnet einen neuen Balken für jede einzelne Datei, stattdessen gibt es --info = progress2 für den gesamten Transfer.
把 把 留 留 无 盐
Wow, das ist ziemlich traurig. MV ist definitiv kaputt, dass es andere Werkzeuge braucht, um das zu tun, was es selbst tun kann. Ich habe gerade herausgefunden, dass mv es ablehnt, in ein vorhandenes Verzeichnis zu schreiben, was ziemlich erbärmlich ist. Es ist Zeit, diesen Befehl durch etwas Funktionsfähigeres zu ersetzen.
Nigratruo