Seite wählen

Ordner im Netzwerk mit Csync synchronisieren

von | Feb 5, 2014 | Development

Wer einen Laptop zusammen mit einem Desktop oder Fileserver besitzt, wird schnell das Problem bekommen dass alle Dokumente und Dateien über mehrere Computer verteilt liegen und man unterwegs mit dem Laptop nie die passenden dabei hat. Die bekannteste Lösung für das Problem ist natürlich ein Cloud-Storage wie Dropbox oder OwnCloud. Wenn die Datenmengen sehr groß sind und man keine eigene Installation von OwnCloud im Heimnetzwerk verwalten will, ist so eine Lösung allerdings nicht wirklich geeignet.

Csync ist ein leichtgewichtiges Terminalprogramm mit dem Dateien und Ordner über das Netzwerk synchronisiert werden können. Die Namensverwandtschaft mit dem bekannten Rsync ist dabei kein Zufall, da Csync sehr ähnlich funktioniert. Der große Unterschied zu Rsync ist jedoch, dass Csync zwei Ordner bidirektional synchronisiert, was bedeutet dass Änderungen in beiden Ordnern erkannt werden um diese auf einen gemeinsamen Stand zu bringen. Wer das Programm installieren möchte findet hier eine Anleitung um Csync aus den Sourcen zu bauen, oder hier ein fertiges .DEB-Paket für 64-Bit Ubuntu/Mint.

Csync kann nach der Installation aus dem Terminal aufgerufen werden:

csync [SOURCE] [DESTINATION]

Source und Destionation können entweder lokale Ordner, oder Pfade auf Geräten im Netzwerk sein. Um auch entfernte Rechner zugreifen zu können muss ein SMB-Account mit Lese- und Schreibzugriff vorhanden sein.

csync ~/Music smb://matthias:passwort@MeinFileserver/Matthias/Music

Dieser Befehl würde alle Dateien in „Music“ mit dem Fileserver synchronisieren. Dabei ist es egal ob Dateien auf dem Fileserver oder zuerst auf dem Laptop hinzugefügt oder gelöscht werden, da Csync anhand des Änderungsdatums und der gespeicherten Zustandsdaten erkennt welche Änderung im Netzwerk synchronisiert werden muss.

Wenn man möchte dass die Synchronisierung regelmäßig durchgeführt wird, kann man zum Beispiel CRON verwenden um den Befehl in gewissen Zeitabständen zu wiederholen lassen. Dieser Eintrag im Crontab würde Csync einmal pro Stunde aufrufen:

 0  * * * * csync /home/matthias/Music smb://matthias:passwort@MeinFileserver/Matthias/Music

2 Kommentare

  1. Thomas Widhalm

    Danke für den Tip. Ich hätte noch ein Mittelding zwischen Cloudlösungen wie Dropbox und Direktsynchronisation wie Csync. Bittorrent Sync gleicht laufend Verzeichnisse über das Bittorrent Protokoll ab. Das hat den Vorteil, dass es problemlos auch mit grossen Dateien über das Internet funktioniert, dafür aber den Nachteil, dass es sich wieder um ein Closed Source Tool handelt und man nie 100% sicher sein kann, wer denn alles mithört.

    Antworten

Einen Kommentar abschicken

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Mehr Beiträge zum Thema Development

Mein PHP-Trainingsprojekt

PHP Schulung Vor kurzem haben wir begonnen, eine neue Programmiersprache zu lernen – PHP. In der ersten Woche haben wir mit den Grundlagen wie Variablen, Arrays, Schleifen begonnen und uns schrittweise zu komplizierterer Syntax wie Funktionen, Objekten und Klassen...

check_prometheus ist jetzt öffentlich verfügbar!

Monitoring ist komplex, das wissen wir hier bei NETWAYS leider zu gut. Deswegen laufen in der Infrastruktur auch mal gerne mehrere Tools für die Überwachung. Zwei gern gesehene Kandidaten sind dabei Icinga und Prometheus. Icinga und Prometheus erfüllen...