Ich versuche, meine Time Machine-Sicherungsdateien unter Backups.backupdb auf ein anderes Laufwerk zu verschieben. Ich habe über Nacht eine Dateikopie gestartet (b / c Ich habe gesehen, dass OSX ewig gebraucht hat, um sich auf die Kopie vorzubereiten ... im Grunde wurden die Dateien stundenlang gezählt). Am Morgen sah ich, dass nur bestimmte Backups (Ordner mit Datumsangaben) kopiert wurden. Ich habe dann versucht, die zu kopieren, die nicht kopiert wurden ... aber das Betriebssystem erlaubte mir das nicht. Ich habe die Fehlermeldung "Der Vorgang kann nicht abgeschlossen werden, da Sicherungselemente nicht geändert werden können." Mein Plan ist es daher, die unvollständige Kopie auf dem neuen Laufwerk zu löschen und dann erneut zu versuchen, den Ordner Backups.backupdb zu kopieren.
Ziemlich frustrierend. Gibt es eine schnellere Möglichkeit, diese Dateien über einen Terminalbefehl zu kopieren, sodass nicht die gesamte Dateizählvorbereitung ausgeführt wird?
Ich kann wahrscheinlich den gesamten Ordner tarieren und dann eine Kopie erstellen. Beeinträchtigt dies jedoch die Dateiberechtigungen usw.? Das eine bei diesem Ansatz ist, dass ich auf meinem Quell-Volume keinen Platz mehr für den Teer habe.
AKTUALISIEREN
Ich habe einige der unten vorgeschlagenen Methoden ausprobiert, insbesondere die Wiederherstellung mit dem Festplatten-Dienstprogramm. Dabei erhalte ich Fehlermeldungen und unerwartete Ergebnisse (zumindest für mich). Ich habe versucht, die Wiederherstellung auf zwei Arten durchzuführen:
- Wenn "Ziel löschen" aktiviert ist: Jedes Mal, wenn die Wiederherstellung abgeschlossen ist (ich habe es zweimal versucht), wird die Meldung "Konnte nicht wiederhergestellt werden - Ungültiger Vorgang" und "Konnte nicht wiederhergestellt werden - Ungültiges Argument" angezeigt. Mein Zieldatenträger erhält jedoch eine Kopie meiner TM-Dateien. Das Seltsame ist, dass meine Zieldisk genau wie meine Quelldisk ist ... sogar die Größe. Mein Ziellaufwerk hat tatsächlich 1 TB, aber nach der Wiederherstellung werden 200 GB angezeigt, wenn ich Informationen vom Finder erhalte. Im Festplatten-Dienstprogramm wird jedoch eine Partition mit 1 TB angezeigt!
Ich versuchte dann, die Scheibe zu überprüfen / reparieren und erhielt:
Ungültige B-Tree-Knotengröße Überprüfen des aufgezeichneten HFS Plus-Volumes. Ungültige B-Tree-Knotengröße Volumenreparatur abgeschlossen. Aktualisieren der Startunterstützungspartitionen für das Volume nach Bedarf. Fehler: Das Festplatten-Dienstprogramm kann diese Festplatte nicht reparieren. Sichern Sie so viele Dateien wie möglich, formatieren Sie die Festplatte neu und stellen Sie die gesicherten Dateien wieder her.
Ich weiß nicht, ob ich überhaupt eine TM-Disk verifizieren / reparieren soll ...
- Wenn "Ziel löschen" deaktiviert ist: Die Wiederherstellung startet nie und ich erhalte:
Wiederherstellung nicht möglich - Vorgang nicht zulässig
quelle
Antworten:
Eine normale Kopie (oder Kopie über rsync oder ditto) repliziert eine Time Machine nicht vollständig, da zwei miteinander verknüpfte Verzeichnisse (wie bei aufeinanderfolgenden TM-Sicherungen ohne Änderung zwischen) in zwei separate Verzeichnisse konvertiert werden.
Am besten kopieren Sie den gesamten Datenträger mit dem Festplatten-Dienstprogramm oder dem Block-Copy-Teil von Carbon Copy Cloner und wahrscheinlich ähnlich wie bei SuperDuper .
quelle
Bei der Migration eines verschlüsselten 3-TB-Time-Machine-Laufwerks auf ein neues 8-TB-Laufwerk unter macOS 10.14 stieß ich auf alle möglichen Probleme. Beim Versuch, eine Wiederherstellung im Festplatten-Dienstprogramm durchzuführen, ist ein Fehler aufgetreten: "Quelle kann nicht überprüft werden" oder "Vorgang nicht zulässig". Bei einigen anderen Vorschlägen in diesem und anderen Beiträgen konnte ich aufregende neue Fehlermeldungen wie "Katalogdatei auf Bild / Volumen ist zu stark fragmentiert “, aber keine Kopie.
Was am Ende am Terminal geklappt hat:
diskutil cs list
im Terminal, um die genaue Byte-Größe des logischen Datenträgers auf dem alten Laufwerk und die GUID des neuen logischen Datenträgers sowie die Datenträgernummern für beide abzurufen, zdisk4
.Verwenden Sie die genaue Bytegröße aus Schritt 2 als Größe des neuen Volumes. In meinem Fall mit einem 3-TB-Laufwerk waren es 2.999.772.905.472 Bytes:
Erstellen Sie mit dem
pv
Befehl von Homebrew eine einfache Blockkopie der Datenträger. Dies ist ähnlich wie bei der Verwendung vondd
, außer dass Sie mit ETA eine Fortschrittsanzeige erhalten.Sie müssen die Plattennummern aus der
diskutil cs list
Ausgabe erhalten. Achtung. Es ist sehr einfach, versehentlich Ihr vollständiges Sicherungslaufwerk mit dem neuen leeren Laufwerk hier zu überschreiben.Wenn Ihnen hier eine Berechtigung verweigert wird / ein Fehler wegen nicht zulässiger Vorgänge angezeigt wird, gehen Sie in die Einstellungen für Sicherheit und Datenschutz und fügen Sie Full-Disk Access für Terminal.app hinzu.
Für mich hat das ungefähr 10 Stunden gedauert - ich habe es über Nacht laufen lassen - aber mit
pv
bekommen Sie zumindest eine Fortschrittsanzeige mit einer ETA.Erweitern Sie nun das Volume, um den gesamten verbleibenden Speicherplatz auf dem Laufwerk zu belegen:
Das hat bei mir ca. 3 Stunden gedauert, mit ungefähr 5 Jahren an Backups. Die meiste Zeit wurde von macOS
fsck
ing verbracht .Jetzt können Sie Ihr neues, geräumigeres Time Machine-Laufwerk genießen. Sie können den alten wiederverwenden oder an einem sicheren Ort aufbewahren, falls etwas mit dem neuen Laufwerk passiert.
Die Schritte zum Ändern der Größe scheinen wichtig zu sein. Das Überspringen dieser Dateien führte zu einer 10-stündigen Dateikopie, die ein 8-TB-Volume mit einem 3-TB-Dateisystem ergab, dessen Größe ich nicht bestimmen konnte.
UPDATE Ein möglicher Nachteil dieses Ansatzes ist, dass die Bezeichner zwischen der alten und der neuen Festplatte identisch sind, da es sich um eine bitweise Kopie handelt. Wenn ich die alte, vollständige Festplatte anschließe, glaubt Time Machine, dass es sich um die neue Festplatte handelt, versucht, eine Sicherungskopie zu erstellen, und beginnt, alte Sicherungen zu löschen, um Platz für neue zu schaffen. Es scheint ein guter Ansatz zu sein, um Daten auf eine größere Festplatte zu verschieben, auf der dann die ältere kleinere Festplatte gelöscht wird.
quelle
cs
Corestorage-Funktion aktiviert ist? Das Aktivieren des Kernspeichers scheint eine möglicherweise unnötige PITA zu sein , kann jedoch aufgrund des Guid-Schritts 3 erforderlich sein.sudo sh -c "$(which pv) --buffer-size 50M -s 3000249008128 < /dev/rdisk3 > /dev/rdisk5"
- Die Größe der 8 TB wurde zuvor erfolgreich geändertResized Core Storage Logical Volume to 3,000,249,008,128 bytes
Warum nicht einfach Terminal benutzen:
-R
rekursiv-n
nicht überschreiben (falls vorhandene Kopierreste vom vorherigen Versuch erhalten bleiben)-p
Beibehaltung von ACLs, Berechtigungen, Erstellungs- / Änderungsdaten usw.-P
Bewahren Sie harte Links, folgen Sie keinen harten oder symbolischen Links.quelle
man cp
Für macOS lesen . Dercp
mit macOS gelieferte reguläre Befehl kopiert keine Hardlinks mit -P. In der Manpage heißt es tatsächlich: "Beachten Sie, dass cp fest verknüpfte Dateien als separate Dateien kopiert. Wenn Sie feste Verknüpfungen beibehalten müssen, sollten Sie stattdessen tar (1), cpio (1) oder pax (1) verwenden."Diese Antwort wird nicht schneller erledigt, aber ich habe eine Möglichkeit gefunden, die Daten richtig zu kopieren, während die Deduplizierung (harte Links) und die Berechtigungen erhalten bleiben. Als zusätzlichen Bonus verwende ich dies, um ein komprimiertes DMG des Endprodukts für die Archivierung zu erstellen.
Erstellen Sie mit den Festplatten-Dienstprogrammen ein Festplatten-Image, das größer ist als Ihr Backups.backupdb-Verzeichnis. Ich würde auch vorschlagen, dass Sie Sparse-Bundle-Image für Image-Format und Festplatte für Partitionen verwenden. Nachdem dieses Image bereitgestellt wurde, fordern Sie Informationen dazu an und deaktivieren Sie die Option Eigentümer ignorieren für dieses Volume.
Schalten Sie nun Time Machine aus und kopieren Sie mithilfe des Finders den Ordner Backups.backupdb in das bereitgestellte Image. Der Finder fragt Sie nach Superuser-Berechtigungen zum Kopieren der Daten. Holen Sie sich einen Drink oder tun Sie etwas anderes für eine Weile.
Wenn der Kopiervorgang abgeschlossen ist, stellen Sie sicher, dass alles in Ordnung ist, und hängen Sie das Image aus. Wählen Sie im Festplatten-Dienstprogramm die Option "Konvertieren" und wandeln Sie das Image des Sparse-Bundles in ein komprimiertes Image um. Auch dies kann eine Weile dauern.
Am Ende sollten Sie zwei Kopien Ihrer Time Machine-Sicherung haben. Sie können die Sparse-Bundle-Version löschen und die DMG als Archiv rechtzeitig an einem sicheren Ort aufbewahren.
Eine Sache, die ich damit nicht versucht habe, ist eine Systemwiederherstellung aus dem dmg, aber ich vermute, dass es funktionieren sollte. Mein Ziel war mehr die Archivierung der inkrementellen Änderungen der Zeitmaschine und die Beibehaltung der Struktur fester Verknüpfungen.
Ich habe auch rsync und cp ausprobiert, aber sie schienen die Struktur fester Verknüpfungen nicht beizubehalten, die am Ende das x-fache der Größe ergeben würde, wobei x die Anzahl der Daten ist, die Sie in der Vergangenheit hatten. Diese Methode hat gut funktioniert, kann jedoch die Geschwindigkeit einer Blockkopie-Lösung erneut beeinträchtigen.
quelle
Apple hat ein offizielles Tutorial dazu: " Time Machine: So übertragen Sie Backups von einem aktuellen Backup-Laufwerk auf ein neues Backup-Laufwerk ".
Die übergeordneten Schritte von dieser Seite:
So empfiehlt die Seite den Kopierschritt:
quelle
sudo rsync
letzte Nacht gemacht, aber heute Morgen findenERROR: out of memory in flist_expand [sender]
und meine Kopie ist jetzt ~ 600gb. Ich habe noch nicht entschieden, was als nächstes zu tun ist, aber ich vermute, dass die meisten Leser das offizielle Tutorial bereits kennen.+1 für Festplatten-Dienstprogramme, zu lang für Kommentare:
zum Klonen eines magnetischen 2-TB-Backup-Laufwerks mit mehrjährigen Backups über SuperDuper! dieses Jahr.
Dies dauerte insgesamt 63 Stunden (SuperDuper stellte die Uhr alle 24 Stunden zurück, sodass am Ende 15:04:43 angezeigt wurde), im Gegensatz zu einer Finder-Kopie, die ich nach ungefähr 4 Tagen und einem Viertel der Dateien stornierte.
Offensichtlich war die Magnetplatte nicht der Grund dafür, dass dies so lange dauerte. Der Grund, warum Finder-Kopien auf Backup-Datenträgern mit langer Laufzeit blockieren, ist die bloße Anzahl von kaskadierenden symbolischen Links zu unveränderten Dateien, insbesondere für viele kleine Dateien wie Git-Indizes.
quelle
rsync ist ein großartiges Dienstprogramm für solche Dinge. Ich benutze es normalerweise für solche Sachen. In diesem Fall könnte ich die -aP-Flags verwenden. Ich denke, ein Teil von -a ("Archiv") besteht auch darin, Berechtigungen, ACLs und dergleichen zu erhalten, aber ich bin nicht sicher.
In IIRC gibt es auch die Option --delete, mit der Sie die Quelldatei löschen können, nachdem sie erfolgreich in das Ziel kopiert wurde. Ich würde das allerdings nicht benutzen - normalerweise mache ich einen kompletten Mirror ohne die Option --delete, dann führe ich den Befehl mit den Optionen -c und --delete erneut aus. -c ist eine Prüfsumme, prüft also alle Dateien, die Sie heruntergeladen haben, anhand der Prüfsumme mit allen Dateien auf der Quelle und löscht dann die Quelle, wenn eine Übereinstimmung vorliegt. Andernfalls wird das Kopieren erneut kopiert oder fortgesetzt.
BEARBEITEN: Bitte benutzen Sie in diesem Fall das -H-Flag wie in den Kommentaren angegeben, um harte Links zu erhalten.
quelle
Wenn Sie bei Festplatten mehrere Dateien von einem Laufwerk verschieben, bewegt sich der Reader mit einem unheimlichen Klickgeräusch hin und her und verlangsamt die Übertragungsrate erheblich. Beispiel: Eine Datei mit USB 2.0 bewegt sich mit 30 MBit / s von 2 auf meinen Computer externe festplatten, aber 2 dateien bewegen sich mit 11 mbps. und 3 Dateien bewegen sich mit 6 Mbit / s. etc etc zip-Dateien werden schneller verschoben als Dateien.
quelle