Synchronisieren von verteilten Offline-Archiven mit großen Dateien auf externen Laufwerken

265
BeniBela

Ich habe eine Reihe von Mediendateien (sagen wir 500 Dateien mit jeweils 500 MB, obwohl einige sehr viel kleiner und einige größer sind), die ich nicht auf meinem Computer speichern kann, da die Festplatte zu klein ist. Daher möchte ich sie auf dem Computer speichern ein externes Laufwerk.

Ich könnte einfach alles auf ein einzelnes Laufwerk verschieben, aber das hat das Risiko, bei einem Laufwerkssturz alles zu verlieren. Es müssen also mehrere Laufwerke miteinander synchronisiert sein. Bei der Synchronisierung sollten die Laufwerke austauschbar bleiben. Wenn Sie eine Datei zu einem Laufwerk hinzufügen, sollten Sie sie zum anderen Laufwerk hinzufügen. Wenn Sie eine Datei auf einem Laufwerk löschen, sollten Sie sie auf dem anderen löschen Manchmal verwende ich mehrere Computer, die jeweils mit einem eigenen externen Laufwerk verbunden sind, und ich möchte nicht, dass sich zwischen den Computern ein Master-Laufwerk befindet. Das Synchronisierungstool muss also einen Verlauf der Metadaten der Dateien führen, in denen aufgezeichnet wird, welche Dateien neu sind und welche Dateien gelöscht wurden. Es sollte auch die Umbenennung nachverfolgen, sodass eine umbenannte Datei nicht vollständig kopiert wird.

Die Historie kann auch die Sicherungen zuverlässiger machen, wenn sie einen Hash für jede Datei enthält, könnte sie überprüfen, ob die Datei noch intakt ist oder durch Festplattenprobleme beschädigt wurde. Ich konnte nachsehen, wann die Datei zuverlässiger als der Dateisystemzeitstempel hinzugefügt oder zuletzt geändert wurde.

Jetzt suche ich nach einem solchen Sync-Tool. (Ich verwende nur Linux, aber vielleicht eines Tages ein anderes Betriebssystem?)

Einige Tools, die nicht passen, aber nahe kommen:

  • rsync: Es führt keine Geschichte.

  • unison: Es bleibt auf dem Laufenden, aber es befindet sich auf dem Synchronisierungscomputer und nicht mit den Daten. Wenn ich sie auf einem neuen Computer synchronisiere, müsste alles erneut geprüft werden. Und es verwendet paarweise Datenbanken. Wenn auf m Computern n Spiegelungen vorhanden sind, werden mn²-Historien beibehalten (oder nur mit einer Sterntopologie mn, aber dann ist wieder ein Master-Laufwerk erforderlich). Die Datenbank scheint auch nicht für den langfristigen Gebrauch gedacht zu sein, eine neuere Unison-Version könnte ein neues Datenbankformat erhalten, das dann alles neu scannen muss, und ich kann in 10 Jahren nicht mehr nachschlagen, wenn ich welche Datei hinzugefügt habe.

  • Quellcodeverwaltung, git, hg, svn, gut, Wildschwein: Die Dateien sind zu groß, um eine Historie von allem zu behalten. Ich habe auch wichtige und unwichtige Dateien in der Sammlung. Wenn mir der Speicherplatz ausgeht, lösche ich eher die unwichtigen Dateien dauerhaft als den Kauf eines größeren Laufwerks.

  • bup, git annex: Sie entfernen die Dateien aus dem Dateisystem, um sie in ihrem eigenen git-basierten Dateisystem zu speichern. Dies macht es schwierig, auf sie zuzugreifen, und ich bevorzuge eine Lösung, bei der die Dateien unverändert bleiben und lediglich die Metadaten hinzugefügt werden, die zum Nachverfolgen der Änderungen erforderlich sind.

  • git-media: Scheint meistens, um die Dateigrößenbegrenzung von git zu umgehen

  • dropbox google drive: sind nicht offline

  • owncloud: Das scheint auf einem ständig laufenden zentralen Server zu basieren, statt auf einer Reihe gleichartiger Festplatten.

  • syncthing: Es scheint permanent zu laufen und synchronisiert alles sofort zwischen Computern. Ich möchte die Synchronisierung lokal durchführen, gelegentlich, indem Sie beide externen Laufwerke an denselben Computer anschließen und sie dann einmal im Monat synchronisieren

  • sparkleshare: scheint nicht für große Dateien gemacht zu sein

1
Mehrere externe Laufwerke auf mehreren Geräten und aktive Synchronisierung sind intuitiv. Ich sage, verwenden Sie einen einzelnen Master immer auf einem Repository auf einer älteren Hardware, dann verwenden Sie etwas wie Resilio Sync, um die Dateien zu pushen und zu ziehen. Dies führt jedoch nicht zu einer Redundanz an sich, denn wenn Sie etwas vermasseln oder einen Fehler haben, können Sie leicht Daten verlieren. Sie benötigen immer noch eine SEPARATE-Sicherung, die einseitig synchronisiert wird. Unternehmen verwenden die 3-2-1-Regel als typisches MINIMUM. Damon vor 6 Jahren 0
Ich benutze es nicht oft genug, um dedizierte Hardware dafür zu rechtfertigen. Im Durchschnitt einmal pro Woche. Es sollte die meisten Störungen in der Geschichte verhindern. Wie Git. Sie müssen keine Angst haben, versehentlich ein Git-Repository zu beschädigen. (Das Synchronisierungstool könnte gelöschte Dateien in einen Thrash-Ordner verschieben, um das Rückgängigmachen der letzten Synchronisierung zu ermöglichen.) Ich könnte meiner Mutter in einem anderen Staat ein Laufwerk geben, aber dann konnte ich nur einmal im Jahr eine Synchronisierung durchführen. BeniBela vor 6 Jahren 0
FreeFileSync, Resilio Sync Damon vor 6 Jahren 0
FreeFileSync speichert mindestens die Änderungsnachverfolgungsdatenbank im rechten Ordner, speichert jedoch keine Hashes aller Dateien, um Beschädigungen zu erkennen. Resilio scheint für permanente Synchronisation im Hintergrund zwischen Geräten und nicht für gelegentliche Synchronisierung zwischen Laufwerken gedacht zu sein. BeniBela vor 6 Jahren 0

0 Antworten auf die Frage