Dateisystem oder Tool mit bidirektionaler Fernsynchronisierung eines Ordners

Das Setup besteht aus mehreren Laptops (Linux und Mac OS), die einen freigegebenen Ordner benötigen, aber keinen konsistenten Zugriff auf das Netzwerk haben. Die Dateien müssten auch offline verwendbar sein und alle Änderungen müssten bei der erneuten Verbindung hoch- und heruntergeladen werden, ohne dass eine Interaktion erforderlich wäre, es sei denn, es liegt ein Änderungskonflikt vor.

Mögliche Lösungen geprüft:

  • Git – erfordert regelmäßige Interaktion und ist nicht für große Binärdateien gedacht

  • Rysnc - nur in eine Richtung und handhabt keine Zusammenführung von Änderungen

  • Samba/nfs - Sie behalten keine lokale Kopie und das manuelle Kopieren wird schließlich zu einem großen Zusammenführungsproblem

Vielleicht Git-Anhang ? Ich habe es nicht ausprobiert, aber es könnte passen. Hier ist ein nützliches „Getting-Started“ und auch ein lesenswerter Artikel zum Synchronisieren von Daten mit dem Git-Annex-Assistenten .
git-annex sieht nach einer interessanten Lösung aus, die sich ebenfalls im Einklang befindet, die auf verschiedenen Plattformen funktioniert und über eine GUI verfügt. seas.upenn.edu/~bcpierce/unison//download.html
Fühlen Sie sich frei, es zu verwenden, wenn Sie Ihre eigene Frage beantworten :)
Ich empfehle Dropbox nicht unbedingt, aber das oder eine seiner Alternativen passt am besten zu den Anforderungen. Ich verwende jedoch unisono.

Antworten (1)

Bidirektionale Synchronisierung ist das genaue Ziel von Unison, siehe https://www.cis.upenn.edu/~bcpierce/unison/ :

Unison ist ein Dateisynchronisierungstool für OSX, Unix und Windows. Es ermöglicht, dass zwei Kopien einer Sammlung von Dateien und Verzeichnissen auf verschiedenen Hosts (oder verschiedenen Festplatten auf demselben Host) gespeichert, separat geändert und dann aktualisiert werden, indem die Änderungen in jeder Kopie an die andere weitergegeben werden.

Es kann über ssh funktionieren. Erfahrungsgemäß besteht das Hauptproblem darin, sicherzustellen, dass auf beiden Seiten die exakt gleiche Version der Software vorhanden ist, sogar auf die gleiche Weise kompiliert, da sonst die Synchronisierung fehlschlägt.

Das Tool würde die bidirektionale Synchronisation übernehmen. Es fungiert jedoch nicht als Daemon.

Wenn Sie automatisch eine Neusynchronisierung auslösen möchten, sobald eine Datei geändert wird, benötigen Sie ein anderes Tool, wie inosyncunter Unix. Oder irgendetwas, das das Dateisystem überwacht und dann ausgeführt werden kann unison.