Wie kann ich den Vorgang des Kopierens von Dateien $A
in einen Sicherungsspeicherort $B
, der mit pv "$A" > "$B"
oder durchgeführt wurde, sicher und zuverlässig fortsetzen cat "$A" > "$B"
?
( $A
Nehmen wir an, die Datei ist sehr groß, z. B. eine LVM2-Snapshot-Datei.)
Ist es erreichbar mit dd
?
Bevorzugt: Bash- oder Python-Lösungen (vorzugsweise Python3).
Beispielszenario: pv "$A" > "$B"
nach 90% Kopieren unterbrochen. Wie kann ich es fortsetzen, um den Kopiervorgang zu beenden, aber nicht die gesamte Arbeit erneut zu wiederholen?
Antworten:
Ja, Sie können dd verwenden, um die Blöcke zu überspringen.
Die wichtigen Parameter hier sind
skip
ebenso wieseek
:skip
: BLOCKS ibs-große Blöcke zu Beginn der Eingabe überspringenseek
: Überspringen Sie BLOCKS - Blöcke mit Obs-Größe zu Beginn der Ausgabequelle
Sie wollen
rsync
:quelle
--append
.--append
seit Version 3.0.0 geändert zu haben. Könnten Sie mir versichern, wenn Sie derzeit--append
bereits kopierte Teile ignorieren, während Sie--append-verify
das gesamte A für die Prüfsummenprüfung lesen? (vor Version 3.0.0.--append
benahm sich wie--append-verify
-> das ist der Grund für Missverständnisse)--append
blind an die Datei angehängt.--append-verify
macht das gleiche, führt aber am Ende Prüfsummen aus, wenn die Prüfsummen nicht übereinstimmen,rsync
scheint eine neue Kopie zu erstellen.Haben Sie es
dd skip
mit einem Offset der tatsächlichen Dateigröße von B versucht (unabhängig von der Partitionsblockgröße)?Das würde dir den fehlenden Teil bringen. An diesem Punkt könnten Sie sie direkt
cat
zusammen in eine neue Datei mitcat "$B" "$A2" >> "$C"; #mv "$C" "$B"
(wo$C
ist natürlich der fehlende Teil auf einem Pfad mit genügend Speicherplatz).cat
funktioniert auch gut zum Verketten von Binärdateien. In diesem Fall verfügen Sie nicht über mehrere Dateikopfzeilen, die einfache Zusammenführungen mit Skripten verhindern würden. Es besteht die Möglichkeit, dass das Ende von$B
beschädigt ist, aber in diesem Fall können Sie es abkürzen und$A
im ersten dd-Schritt mehr davon erneut lesen .quelle