
Wie der Titel schon sagt, möchte ich alles von einem defekten externen 4-TB-USB-Laufwerk auf ein neues 4-TB-USB-Laufwerk kopieren.
Das Problem besteht darin, dass ich nicht sicher bin, wie verschiedene Programme mit Fehlern umgehen.
Da dies außerdem wahrscheinlich ziemlich lange dauern wird, möchte ich die Daten kopieren und dabei das Laufwerk eingebunden lassen. Es werden neue Dateien hinzugefügt, aber keine Dateien geändert, falls das einen Unterschied macht.
Ich werde über die Befehlszeile arbeiten.
Aktualisieren:Wie vorgeschlagen, probiere ich rsync aus und verwende zusätzliche Ratschläge vonHier.
sudo rsync -aAXv --log-file=/home/osmc/rsync.log --exclude={"/lost+found"} /mnt/Main/* /mnt/NewMain
Es wird ein Update darüber gegeben, wie mit Fehlern umgegangen wird, wenn diese gefunden werden.
Antwort1
Wenn Sie auf die Anforderung verzichten können, das Laufwerk und sein Dateisystem gemountet zu lassen: Booten Sie von einem externen Medium, um sicherzustellen, dass die Festplatte inaktiv ist (oder nehmen Sie das Laufwerk heraus und stecken Sie es als Slave in einen anderen Computer), und verwenden Sie dann ddrescue auf jeder (wichtigen) Partition:
ddrescue /dev/sdb1 /mnt/some/large/storage/sdb1backup logfile
Dadurch wird ein Image der Partition erstellt, das dann gemountet werden kann:
mount -o loop /mnt/some/large/storage/sdb1backup /mnt/image
ddrescue funktioniert wie dd, mit der offensichtlichsten Ausnahme, dass es viel ausführlicher ist. Ich empfehle dringend, die Manpage nach für Ihren Fall relevanten Optionen zu durchsuchen. Die Protokolldatei ermöglicht Ihnen mehrere Durchläufe und das Überspringen der Sektoren, die bereits erfolgreich abgerufen wurden.
Wenn Sie es unbedingt am Laufen haben müssen:rsync -Pravdtz /files somehost:somefolder/
Antwort2
Die Antwort mit dem Vorschlag, rsync zu verwenden, ist weg, also beantworte ich sie selbst. Danke für den Tipp.
Ich probiere rsync aus und verwende zusätzliche Ratschläge vonHier.
sudo rsync -aAXv --log-file=/home/osmc/rsync.log --exclude={"/lost+found"} /mnt/Main/* /mnt/NewMain
Es dauerte ziemlich lange, bis es abgeschlossen war, aber ich konnte das System weiter verwenden und währenddessen sogar Dateien auf dem Laufwerk lesen und schreiben. Die aufgetretenen Fehler wurden protokolliert und am Ende wurde es noch einmal versucht. Am Ende habe ich ein paar Dateien verloren, aber nichts, was mir wirklich wichtig war.
Das wird wahrscheinlich nicht jedermanns Bedürfnissen gerecht, aber es hat genau das getan, was ich brauchte.