Ich sichere derzeit den Inhalt einer externen Festplatte A, indem ich (1) alles auf der externen Zielfestplatte B lösche und (2) alles von A nach B kopiere (im Finder). Die externe Festplatte enthält nur „Basisdaten“ (Ordner, Bilder, Videos, Dokumente usw.), nichts Besonderes.
Aber mit all den erstaunlichen kostenlosen Tools, die es gibt, konnte ich kein anständiges Backup finden (Vorschläge akzeptiert).
Ich möchte das automatisieren. Nach ein paar Suchen scheint es, dass ich verwenden kann rsync
. Ich möchte dies dann automatisieren, indem ich rsync
vermeide, Dateien zu kopieren, die sich bereits auf der Zielfestplatte befinden (wenn eine Änderung vorgenommen wurde, möchte ich natürlich die Datei / den Ordner aktualisieren, ebenso wie gelöschte Dateien / Ordner oder neue Dateien / Ordner; die Idee ist, nachzuahmen, was ich normalerweise manuell mit Finder mache).
Ich bin an diesem Punkt angelangt
rsync -av --progress --delete /Volumes/A/ /Volumes/B
Jetzt ist das Protokoll voll von Dateien, deren Name mit .
oder ._
oder sogar beginnt ._.
. Sind sie notwendig?
Frage
Wie kann ich nur die wichtigen Dateien kopieren und alle wichtigen Dateien zurücklassen? Wenn ich zum Beispiel habe, würde ich photo.png
erwarten photo.png
, nicht ._photo.png
oder viele Dateien zu kopieren .
Was --exclude
oder --exclude-from
kann sicher auf einem Mac verwendet werden? Möglicherweise lautet eine gute Regel: "Kopieren Sie einfach alles, was der Finder anzeigt". Dies würde ich kopieren, wenn ich alle Ordner manuell durchlaufen würde.
Zusätzliche Frage
Ist -av --progress --delete
genug Begehen ich ein Verbrechen oder riskiere ich Daten? Welche Optionen würden Sie verwenden?
Bitte unterstützen Sie Ihre Antwort mit einigen Argumenten, ich würde es begrüßen.
Ich suche nach einer Möglichkeit zur Automatisierung, rsync
die sehr leistungsfähig und kostenlos zu sein scheint.
quelle
Antworten:
Kopieren Sie für maximale Sicherheit alles
Am sichersten ist es, alles zu kopieren , einschließlich unsichtbarer Metadatendateien.
Dateien existieren in der Regel aus einem bestimmten Grund und wenn sich die Software ändert, werden auch Existenz, Zweck und Inhalt dieser Metadatendateien geändert. Wenn Sie alles kopieren, wird der Wartungsaufwand verringert und Sie können sicher sein, dass nichts verloren geht.
Die von erstellte Protokolldatei
rsync
ist technisch von Natur ausrsync
ein Befehlszeilentool. Erwägen Sie, eine aufgeräumte, nach Metadaten gefilterte und möglicherweise sogar farbcodierte Ausgabe zu präsentieren, die der Benutzer überprüfen kann. Sie können dies mit einer Vielzahl von Skriptwerkzeugen und -sprachen tun. Bitte stellen Sie hier weitere Fragen zu Ask Different und zu StackOverflow, wenn Sie Hilfe bei diesem Ansatz benötigen.Letzte X X-Ressourcen löschen und kopieren
rsync
Schauen Sie sich in Bezug auf die Flags die Frage an. Schnellster und sicherster Weg, um massive Daten von einem externen Laufwerk auf ein anderes zu kopieren . In dieser Frage werden einige zusätzliche Flags verwendet und erläutert:In dieser Situation
E
wird sichergestellt, dass Ressourcengabeln und andere Mac-spezifische Eigenschaften kopiert werden.Möglicherweise möchten Sie
--delete-after
das Löschen vermeiden, bis die Kopie fertig ist. Bitte beachten Sie, dass für diesen Ansatz möglicherweise ein Ziellaufwerk erforderlich ist, das doppelt so groß ist wie die Quelle.Mögliche Ausschlüsse
Eine Antwort auf eine verwandte Frage: Wie kann ich FCPX-Renderdateien aus einer Time Machine-Sicherung weglassen? , stellte einen nützlichen Link zu OS X-Dateien und -Ordnern bereit , der von den meisten Sicherungen ausgeschlossen werden kann . Dieser Link enthält eine praktische Liste von Dateimustern, Ordnern und Pfaden, die Sie ausschließen können.
Punktdateien einschließen
Es gibt gute Gründe, Dateien zu sichern, die mit Punkten beginnen und mit
.*
Dateien übereinstimmen.Einige Programme speichern Einstellungen, Einstellungen und andere wertvolle Informationen in Ordnern oben im Ordner des Benutzers in Ordnern mit unsichtbaren Punktpräfixen. Beim Ausführen
ls -la ~/
werden diese Ordner und Dateien angezeigt.Wenn ein Benutzer Software verwendet oder hat, die wiederum Versionskontrollsoftware verwendet, müssen Sie Punktdateien sichern. Software wie Subversion und Git speichern wichtige Informationen in ihren Punktordnern. Diese versteckten Ordner können über Ihr Dateisystem verteilt sein, wo immer ein Projekt ausgecheckt wird.
Spotlight und Festplattenzugriff
Spotlight ist der Suchdienst von OS X. Spotlight verwendet den
mdworker
Prozess zum Indizieren und Aktualisieren des Suchkatalogs. Wenn Sie Bedenken hinsichtlich einer möglichen Beschädigung der Festplatte oder langsamer Kopien haben, kann das Deaktivierenmdworker
während der Ausführungrsync
hilfreich sein. Persönlich lasse ich Spotlight laufen, während großersync
Übertragungen ausgeführt werden.quelle
rsync
.E
und--delete-after
sind die wichtigsten Punkte, die diese Antwort zu einem Gewinn machen.-E
, in neueren Versionen gibt es,-X
die ich an einigen Stellen empfohlen sehe, welche ist die richtige? Oder beide? Ich hätte gerne ein aktuelles Pseudo-Komplett, das die meisten allgemeinen Sorgen abdeckt. Wäre das Kopieren von Spotlight-Dateien einfacher und schneller als das Generieren? Wie kann ich Spotlight stoppen, damit es in der Zwischenzeit nicht durcheinander kommt? Was ist mitcaffeinate
dem Prozess? Oder wenn es sich nur um eine Sicherungsliste handelt, kann sie von Spotlight nicht indiziert werden, viel weniger Sorgen usw. Viele dieser Fragen wurden mit Sicherheit beantwortet.Wenn Sie
rsync
Version 3.0.6 gemäß Carbon Copy Cloner oder 3.1.2 gemäß Homebrew verwenden, können Sie sich an den Argumenten von Carbon Copy Cloner orientieren:rsync -A -X -H -p --fileflags --force-change -l -N -rtx --protect-decmpfs --numeric-ids -go --delete-during --backup --backup-dir=</PATH/TO/STICK/BACKUP_when_using_delete> --protect-args <SRC>/ <DEST>
quelle
--protect-decmpfs
ist ab 3.1.3 nicht mehr verfügbar, siehe github.com/Homebrew/homebrew-core/pull/23415 .Ich würde davon abraten, Metadaten während einer Sicherung zu bereinigen, insbesondere die Punktedateien, z. B.
._$filename
wenn Sie die Punktedateien wirklich von Ihremrsync
Befehl ausschließen möchten, fügen Sie--exclude '.*'
sie hinzu.quelle
'.*'
und'/.*'
?). Ich glaube nicht, dass Finder alle kopiert, vielleicht nur einige davon. In diesem Fall würde ich es vorziehen, nur diejenigen auszuschließen, die unnötig sind (z.DS_Store
. B. ). Und ja, diejenigen, die wichtig sein könnten, die ich aber nicht in meinem Protokoll haben möchte, kann ich mit regulären Ausdrücken filtern.A
Festplatte verwendet werden kann.Ich bin mit den aktuellen Antworten nicht ganz zufrieden, aber ich werde versuchen, hier einige der Möglichkeiten zu behandeln, die ich im Internet gesehen habe, um ein gutes Setup für zu finden
rsync
.Übrigens, wenn man sich für Time Machine wie Kopien interessiert, gibt es
rsnapshot
. Und es gibt auch Unison für bidirektionale Synchronisationen. Außerdem gibt es tatsächlich einige GUIs wie Backup Utility und arRsync . nicht genau das, wonach ich gesucht habe, aber sie könnten den Job für jemanden machen.Erstens war meine einzige Absicht, Fotos und Videos zu duplizieren, sodass keine exakte Kopie erforderlich war, sodass ich mich nicht zu sehr darum kümmern musste . Tatsächlich waren die meisten meiner Zweifel, ob ich alles ausschließen könnte (dasselbe, was passieren würde, wenn ich beispielsweise ein Foto aus dem Internet heruntergeladen hätte, ich habe nur eine PNG-Datei heruntergeladen, alles andere wird nicht heruntergeladen, sondern automatisch generiert ).
Hier ist eine unstrukturierte Liste von Gedanken, die Sie möglicherweise berücksichtigen möchten
Wenn Sie sicherstellen möchten, dass Ihr Laptop nicht in den Ruhezustand wechselt, möchten Sie möglicherweise
caffeinate
den Vorgang ausführencaffeinate -s rsync -av ...
. Von hier genommen .Wenn Sie lokale Kopien erstellen, wie in meinem Fall, oder wenn die Internetverbindung nicht zu langsam ist, sollten Sie nicht die
-z
Option (Komprimierung) und verwenden-W
(ganze Datei übertragen, anstatt Delta-Übertragungen; dies ist eine Standardeinstellung, wenn lokal). und wahrscheinlich verwenden--inplace
, um Überweisungen schnell zu machen. Von hier genommen .Sie können verwenden,
--delete-after
damit jede Datei zuerst übertragen und dann am Ziel verschoben (und die ursprüngliche gelöscht) wird. Dies ist sicherer als das Löschen vor der Übertragung oder während der Übertragung.Sie können die Übertragung durch Drücken von ctrl + Cstoppen und sie wird sauber gestoppt. Von hier genommen . Dies war eine meiner Befürchtungen bei SuperDuper!. Wenn Sie eine Übertragung stoppen müssen, wird die Meldung "Sie werden die Festplatte in einem unbekannten Zustand belassen ..." angezeigt.
In neueren Versionen gibt es
--info=progress2
noch mehr Details-v
.Es gibt
-P
(was gleich--partial
und ist--progress
), die Dateien in der Mitte der Übertragung dort belassen, sodass Sie beim Neustart des Prozesses weitermachen können (wenn Sie die Synchronisierung aus irgendeinem Grund nicht sofort beenden können).Möglicherweise möchten Sie Spotlight oder TimeMachine vor dem Kopieren stoppen und nach der Übertragung wieder aktivieren. Und deaktivieren Sie sogar Spotlight für die externe Festplatte.
Andere Optionen , die in all den Referenzen gehören
-x
(oder--one-file-system
),-E
(--executability
),-H
(--hard-links
),-X
(--xattrs
),-A
(--acls
), und--sparse
,--hfs-compression
,--protect-decmpfs
. Vielleicht möchten Sie sie sich ansehen.Für mich sieht ein grundlegender Befehl so aus (ich könnte mehr Optionen verwenden, aber dies reicht für ein Beispiel):
In meinem Fall könnte ich nur einschließen
{*.jpg,*.png,*.mp4,*.txt,*.pdf,…}
und niemand würde sagen "Sie brauchen auch Systemdateien", aber da ich nicht suchen möchte, um alle möglichen Dateitypen zu erhalten, von denen ich Dateien habe, ziehe ich es vor, sie auszuschließen. Und es gibt Dinge, die nicht nur ausgeschlossen werden können, sondern auch bequem erscheinen .Ich habe ein paar Links gefunden, nimm was du willst:
https://bombich.com/kb/ccc4/some-files-and-folders-are-automatically-excluded-from-backup-task
https://gist.github.com/tvwerkhoven/4541989
https://github.com/necolas/dotfiles
https://gist.github.com/shkm/5531679
http://www.hackurmac.com/2014/08/backing-up-and-restoring-your-hackintosh.html
https://github.com/jedda/Counterpart
http://alanwsmith.com/rsync-exclude-list-for-mac-osx
Und von dort könnten Sie wahrscheinlich bekommen, was sicher oder vernünftig ist, um es zu ignorieren. Hier ist die vollständige Liste (ich habe gerade Duplikate entfernt)
quelle
Ich habe rsync für Backups bei mehreren Jobs verwendet und verwende es zu Hause.
Ich kann es nur empfehlen, aber mit einigen Modifikationen. Als Backup-Tool ist es großartig, aber als Archivierungs-Tool fällt es ein wenig flach. Ja, es kopiert alles, aber Sie erhalten nicht von allem Versionen, sondern immer nur die neuesten Versionen.
Ich habe diesen Leitfaden http://www.mikerubel.org/computers/rsync_snapshots/ als Ausgangspunkt verwendet. Lesen Sie die ganze Seite. Es erklärt hervorragend die Optionen und beschreibt, wie Sie inkrementelle Sicherungen implementieren können. Und erstaunlicherweise ist der Artikel über 10 Jahre alt, aber noch heute anwendbar. Muss Unix lieben.
quelle
rsync
. Auf jeden Fall, guter Link, es deckt eine Menge ab,rsync
aber es gibt ab heute ein Tool, um genau das zu tun :rsnapshot
.