1 Dateisynchronisation mit Syncthing

Datum: 2023-11-02

Ziel ist die automatische Dateisynchronisation zwischen Netzwerk-Hosts.

Als Standard-Ordner wird beim ersten Start von Syncthing ein Verzeichnis namens „Sync“ im jeweiligen Heimatverzeichnis eines Users angelegt. Die Etablierung einer Vertrauensstellung zwischen den Geräten und das Verknüpfen mit diesen Ordnern macht die Einrichtung allerdings ein wenig aufwändig.

1.1 Software herunterladen und starten

1.1.1 Slitaz-Linux (VM)

Wir beginnen in der virtuellen Maschine Slitaz und starten dort den Webbrowser „Midori“, den wir im Menü „Anwendungen“ unter „Internet“ finden können. Via https://syncthing.net/downloads/ laden wir das passende Archiv herunter, wir wählen dabei den Link unterhalb von „Linux“, der sich 32-bit (x86-32) nennt.

1.1.1.1 Archiv entpacken und Programm starten

Wir öffen im Menü „Anwendungen“ unter „Systemwerkzeuge“ das „Sakura Terminal“ und geben dort folgendes ein:

cd Downloads
tar xf syncthing-linux-386-v1.23.1.tar.gz
#    >>> Mittels Autovervollständigung Dateiname ergänzen lassen:  tar xf syncTABULATOR-TASTE

cd syncthing-linux-386-v1.23.1
./syncthing
#    >>> dies startet die Anwendung, das Terminalfenster muss geöffnet bleiben

1.1.2 Windows-Host

Auf dem Windows-Rechner besorgen wir uns ebenfalls die Software von https://syncthing.net/downloads/, entpacken sie und können sie auch schon mit Doppelklick auf syncthing.exe starten.

1.2 Konfiguration der Geräte

1.2.1 Auf Slitaz-Linux

Als Vorbereitung für das bequeme Austauschen der langen Geräte-Kennung mittels Secure Shell (ssh = TCP-Port 22), führen wir in dem Sakura-Terminal folgendes aus:

su -
mkdir /var/run/sshd
/etc/init.d/sshd start
passwd tux    # Hier werden keine *** als Platzhalter angezeigt!

1.2.2 Auf Windows

Nun können wir uns schon ausgehend vom Windows-Host zu dieser VM mittels einem Windows-Terminal (cmd.exe) verbinden:

ssh tux@localhost
#   >>> dabei das eben gesetzte Passwort eingeben

Mittlerweile in Linux-Slitaz eingeloggt, kopieren wir uns in die mit Hilfe des Editors nano zu erzeugende Datei kennungen.txt von beiden Seiten die langen Kenn-Nummern hinein. Sie sind im Web-UI des laufenden Syncthings oben rechts unter „Aktionen“ bei „Eigene Kennung“ zu finden:

nano kennungen.txt

# Nachdem 2 Zeilen hineinkopiert wurden (bitte den Gerätenamen ans Ende
# jeder Zeile schreiben) speichern und beenden wir das Ganze:
#   (S)ave: STRG - s
#   e(X)it: STRG - x

Weiter geht es mit der Konfiguration im Web-UI auf Linux. Dazu öffnen wir im Midori-Webbrowser die URL http://127.0.0.1:8384 und können mit den Einstellungen beginnen:

  • Eigene Kennung nicht via Schalter „Kopieren“ sondern a) Markieren und b) mit rechter Maustaste „Kopieren“ wählen

  • Diesen in der Zwischnablage befindlichen Text in den obigen Editor nano einfügen sowie einen Kommentar anfügen.

Dasselbe passiert nun umgekehrt auf dem Windows-Host im dortigen Web-UI. Auch hier wieder die lange Kennung kopieren und in den Editor mit einer Beschreibung hinterlegen. Beide Kennungen stehen jetzt in einer Datei und wir können sie über das Windows-Terminal-Fenster an den jeweilig anderen mit Copy&Paste weitergeben.

Auf beiden Seiten fügen wir diese Nummern via „Gerät hinzufügen“ ein (unten links). Am Ende der Aktionen bekommen wir als Statusmeldung jeweils nur „Getrennt (Nicht genutzt)“.

1.3 Konfiguration der Ordner

Beim Menüpunkt „Ordner“ (oben links) findet sich der standardmäßig erzeugte Ordner „Sync“ (in $HOME eines Users zu finden). Er muss nur noch einem Gerät zugeordnet werden:

  • Auf „Default Folder“ klicken, „Bearbeiten“

  • Registerkarte „Teilen“ anklicken

  • Das Häkchen links neben dem Kennungs-Namen „Nicht geteilt“ anklicken

  • Schalter „Speichern“ betätigen, der Status geht dabei von „Ungeteilt“ (orange) auf „Aktuell“ (grün) über.

Das tun wir wieder auf beiden Seiten.

Der Status unseres Partners lautet bei „Externe Geräte“ nun nicht mehr wie oben „Getrennt (Nicht genutzt)“, sondern nur noch „Getrennt“.

1.4 Konfiguration der Sockets

Was uns in unserem Netzwerkszenario aber noch fehlt, ist das Bekanntgeben der bereits eingerichteten Qemu-Weiterleitungen mittels Port 22000 zu dem hinter Network Address Translaton (NAT) laufenden Linux-Rechner. Wir finden die Einstellungen bei den jeweiligen Geräten, Registerkarte „Erweitert“. Siehe dazu die folgenden Abbildungen.

Zuerst kümmern wir uns wieder um Linux:

_images/syncthing-unter-slitaz.png

Und schließlich ist auch Windows dran:

_images/syncthing-unter-windows.png

Fehlt nur noch der Neustart beider Syncthing-Anwendungen, danach geht der Status bei „Externe Geräte“ ebenfalls auf „Aktuell“ (grün) über, zugleich werden jetzt die externen Geräte mit ihrem Hostnamen, den sie nun senden können, dargestellt.

Eine aktivierte Windows-Firewall sollte hierbei kein Problem darstellen, das Ganze spielt sich ja nur via ‚localhost‘ ab.

1.5 Funktionstests

Wenn alles klappt, leuchtet uns auf beiden Seiten viel Grün entgegen, wie es hier bei Slitaz zu sehen ist:

_images/syncthing-Aktuell.png

Das Ziel ist erreicht: Dateien, die in die „Sync“-Ordner kopiert werden, synchronisieren sich automatisch… Viel Spaß bei der Einrichtung und beim Experimentieren!