Verzeichnisse synchronisieren mit Capivara

Aus LinuxUser 08/2006

Verzeichnisse synchronisieren mit Capivara

Im Gleichtakt

Vielen ist der Konfigurationsaufwand für textbasierte Synchronisations-Tools wie Rsync zu groß. Das Java-Programm Capivara bringt dafür eine GUI mit, weist aber noch ein paar Macken auf.

Viele Synchronisationslösungen setzen voraus, dass das zuständige Programm auf beiden Seiten installiert ist. Wenn es zur Installation dann noch einen Root-Account erfordert, den man auf der Gegenseite nicht besitzt (zum Beispiel bei einem Web-Hoster), wird aus dem schönen Plan leider nichts. Die Java-Software Capivara [1] kann dagegen lokale Verzeichnisse mit FTP- und SFTP-Servern synchronisieren, begnügt sich also mit der meist ohnehin vorhandenen Infrastruktur.

Java-Hürden nehmen

Weil es in Java geschrieben ist, setzt Capivara das Java Development Kit (JDK) oder mindestens das Java Runtime Environment (JRE) voraus, das Sie bei Sun [2] herunterladen können, wenn es Ihrer Distribution fehlt. Stellen Sie nach dessen Installation sicher, dass die Bash-Shell den Interpreter findet, indem Sie auf der Kommandozeile java -version eingeben. Meldet die Shell, dass sie die Datei nicht gefunden hat, müssen Sie den Ausführungspfad anpassen, zum Beispiel mit export PATH=/usr/jdk1.5.0_06/bin:$PATH. Meldet der obige Versionsbefehl GNU libgcj, müssen Sie ebenfalls den Pfad wie beschrieben einstellen. In diesem Fall befindet sich im PATH zwar ein ausführbares Java, es gehört aber zum GNU-Gcj [3], mit dem Capivara nicht funktioniert.

Zur Installation führen Sie java -jar capivara-0.7.6-installer.jar aus, und die Sprachauswahl des Installers erscheint. Wenn Sie ein paar Mal auf Weiter geklickt haben, gelangen Sie zum Dialog, in dem Sie den Installationsort angeben. Am Ende bietet der Installer an, einen Menüeintrag anzulegen, was aber im Test nicht funktionierte.

Nach dem Start erscheint ein Fenster für die die zu synchronisierenden Verzeichnisse. Um Dateien aufzulisten, stellen Sie über den Button mit dem grünen Kreis und dem Stecker eine Verbindung her. Das gilt auch für lokale Verzeichnisse. Im folgenden Dialog wählen Sie dafür beim Punkt Protokoll den Wert local file system. Nach dem Schließen des Dialogs zeigt das Hauptfenster die lokalen Dateien und Verzeichnisse, durch die sie wie gewohnt navigieren können. Hier lassen sich Dateien auch löschen und umbenennen.

Um zum Beispiel ein lokales Verzeichnis http://$HOME/homepage mit den HTML-Dateien auf dem Webserver zu synchronisieren, stellen Sie mit ihm über SSH eine Verbindung her. Das Serververzeichnis zeigt Capivara dann in der anderen Fensterhälfte an (Abbildung 1).

Abbildung 1: Capavira zeigt die zu synchronisierenden Verzeichnisse in jeweils einer Fensterhälfte.

Abbildung 1: Capavira zeigt die zu synchronisierenden Verzeichnisse in jeweils einer Fensterhälfte.

Synchronisieren in alle Richtungen

Ist eines der beiden Verzeichnisse noch leer, markieren Sie einfach alle Dateien im Ausgangsverzeichnis und kopieren sie mit dem Kopieren-Button. Nach Abschluss des Kopiervorgangs besitzen beide Verzeichnisse den gleichen Inhalt.

Wenn Sie in Zukunft auf dem eigenen Rechner Dateien bearbeiten, brauchen Sie nicht über jede einzelne Änderung Protokoll zu führen. Stattdessen drücken Sie einfach auf den Sync-Button. Der folgende Dialog zeigt noch einmal die zu synchronisierenden Accounts und Verzeichnisse an. Dort können Sie außerdem die zu verwendende Synchronisationsvariante wählen. Im einfachsten Fall, dem TimeSync vergleicht Capivara die Zeitstempel der lokalen und entfernten Dateien. Alternativ können Sie die Prüfsummenmethoden SHA-1 und MD5 verwenden, die Änderungen an Dateien auch feststellen, wenn Größe und Datum gleich geblieben sind. Allerdings braucht Capivira für das Berechnen der Prüfsummen relativ lange. Im gleichen Dialog können Sie auch Dateifilter eingeben, die Dateien ein- beziehungsweise ausschließen. Praktisch: Die dafür einzugebenden Regular Expressions lassen sich direkt im Eingabedialog testen (Abbildung 2). Zusätzlich kann Capavira einmal erstellte Filterausdrücke speichern und zu Listen gruppieren.

Abbildung 2: Der Dialog zur Eingabe der Dateifilter ermöglicht den Test der Regular Expressions.

Abbildung 2: Der Dialog zur Eingabe der Dateifilter ermöglicht den Test der Regular Expressions.

Drücken Sie dann den Start-Button, startet nicht etwa die Synchronisierung. Das Programm zeigt zuerst noch einmal die Dateilisten und markiert geänderte Dateien in roter Schrift im so genannten Sync Explorer. Dort können Sie noch einmal einzelne Dateien vom Abgleich ausschließen. Wählen Sie am unteren Fensterrand Zeige nur Unterschiede, blendet Capavira die unveränderten Dateien aus. Links daneben wählen Sie schließlich die Richtung der Synchronisation, jeweils basierend auf der rechten und linken Fensterhälfte. Behalten Sie also im Auge, auf welcher Seite sich lokale und entfernte Dateien befinden.

Wenn Sie dann Vorschau wählen, zeigt Capavira endlich die Synchronisierungsschritte an, die es durchführen möchte. Überprüfen Sie in diesem Fenster noch einmal genau die Synchronisationsrichtung, denn danach gibt es kein Zurück. Im Test löschte Capavira einmal ein ganzes Verzeichnis auf dem Server, weil das lokale Verzeichnis leer und die Richtung falsch eingegeben war.

Lokale und Serververzeichnisse lassen sich als Favoriten abspeichern, die Synchronisationseinstellungen leider nicht. Kleine Fehler trüben den positiven Eindruck, schränken die Funktion aber kaum ein: So funktionierte das Löschen lokaler Dateien zwar, Capavira aktualisierte aber die Ansicht nicht. Der Versuch, sie über den entsprechenden Button zu aktualisieren, führte zu einer Java-Fehlermeldung, das Programm lief aber weiter.

Schon ganz gut

Im Großen und Ganzen ist Capavira ein recht zuverlässiges und einfach zu benutzendes grafisches Synchronisations-Tool. Damit lassen sich nicht nur entfernte Server und lokale Verzeichnisse abgleichen, sondern auch angesteckte USB-Sticks und die eingebaute Festplatte. Mit den kleinen Bugs kann man als Anwender leben. Ein gewisses Risiko stellt die Leichtfertigkeit dar, mit der Capavira auch Verzeichnisse auf dem Server ohne Nachfrage löscht. Es wäre schön, wenn die Programmautoren an dieser Stelle noch eine Sicherheitsabfrage einbauen könnten. Bis dahin achten Sie lieber einmal zuviel auf die richtige Synchronisationsrichtung.

Glossar

SFTP

Tatsächlich handelt es sich bei diesem Protokoll gar nicht um einen FTP-Verwandten. Zwar ist es auch für Dateiübertragung zuständig, gehört aber ansonsten zum Secure-Shell-Protokoll.

LinuxUser 08/2006 KAUFEN
EINZELNE AUSGABE
ABONNEMENTS
TABLET & SMARTPHONE APPS
E-Mail Benachrichtigung
Benachrichtige mich zu:

Hinweis: Dieser Artikel ist älter als ein Jahr, enthaltene Informationen sind möglicherweise veraltet.

0 Kommentare
Älteste
Neuste Beste Bewertung
Inline Feedbacks
Alle Kommentare anzeigen
Nach oben