Netzwerk | Thorsten Eggeling | 1/2025 | 29. November 2024

Dateien im Netz synchronisieren

Ordner synchronisieren: Syncthing gleicht Ordnerinhalte automatisch zwischen zwei oder mehr Geräten ab und kann auch Sicherungskopien erstellen, die vor Datenverlust schützen.

Backups sind weniger lästig, wenn sie automatisch geschehen. Der Artikel stellt ein Open-Source-Tool für die Sicherung persönlicher Dateien vor, das auch plattformübergreifend funktioniert.

Die Open-Source-Software Syncthing (https://syncthing.net) kann ausgewählte Ordner zwischen Geräten im eigenen Netzwerk komfortabel synchronisieren. Sie können beispielsweise den Ordner „Dokumente“ auf Ihrem Arbeitsrechner mit einem Ordner auf einem anderen PC abgleichen, sodass beide immer die gleichen Dateien enthalten. Oder Sie synchronisieren den Bilderordner auf Ihrem Smartphone, damit Fotos automatisch auf dem PC landen.

Service: Die Befehlszeilen und Downloadlinks aus diesem Artikel können Sie über https://m6u.de/SYNCT abrufen.

Syncthing installieren

Syncthing ist in den Paketquellen von Ubuntu und Linux Mint enthalten (Paketname „syncthing“), allerdings nicht in der aktuellen Version. Die Installation der neuesten Version aus dem Repositorium der Entwickler ist umständlicher, aber empfehlenswert:

sudo mkdir -p /etc/apt/keyrings

sudo wget -O /etc/apt/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg

echo "deb [signed-by=/etc/apt/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list

printf "Package: *\nPin: origin apt.syncthing.net\nPin-Priority: 990\n" | sudo tee /etc/apt/preferences.d/syncthing.pref

sudo apt update

sudo apt install syncthing

Die Kommandos (sechs Zeilen) gelten für Ubuntu 22.04/ 24.04, Linux Mint 21/22 und Raspberry-Pi-OS. 

Für weitere Systeme sind Downloads unter https://docs.syncthing.net/users/contrib.html aufgelistet. Android-Nutzer können Syncthing-Fork installieren. Stand November 2024 ist die App bei Google Play noch verfügbar (https://m6u.de/SYAND), die Entwickler planen allerdings die Einstellung dieses Angebots. 

Weitere Infos und alternative Downloads finden Sie unter https://github.com/catfriend1/syncthing-android. Windows-Nutzer laden das Setupprogramm bei https://github.com/Bill-Stewart/SyncthingWindows Setup herunter.

Startmethode von Syncthing konfigurieren

Die Arbeitsweise von Syncthing erfordert keine besondere Rollenverteilung für einzelne Geräte. Jedes Gerät, auf dem die Software installiert ist, kann sich mit einem anderen Teilnehmer synchronisieren. In der Praxis wird man aber wahrscheinlich einen PC als Server definieren und die anderen als Clients.

Autostart für den Server: Syncthing wird immer mit dem Konto eines normalen Benutzers ausgeführt. Die Konfigurationsdateien liegen im Ordner „/home/[User]/.local/state/syncthing“. Sie können das von Ihnen standardmäßig verwendete Konto nutzen oder ein Extrakonto für Syncthing anlegen. Den automatischen Start aktivieren Sie mit (zwei Zeilen)

sudo systemctl enable syncthing@[User].service

sudo systemctl start syncthing@[User].service

Ersetzen Sie „[User]“ durch die Bezeichnung des gewünschten Benutzerkontos (ohne Klammern).

Ordner auswählen: Geben Sie das Verzeichnis an, das Sie synchronisieren möchten. Eine eindeutige Ordnerbezeichnung hilft bei der Zuordnung auf dem Server-PC.

Autostart für Clients: Auf anderen PCs konfigurieren Sie einen Systemdienst, der im Benutzerkontext läuft und erst nach der Anmeldung aktiv wird. Führen Sie im Terminal diese beiden Zeilen aus:

mkdir -p ~/.config/systemd/user

cp /usr/lib/systemd/user/syncthing.service ~/.config/systemd/user

Dann aktivieren und starten Sie den Dienst:

systemctl --user enable syncthing.service

systemctl --user start syncthing.service

Höhere Rechte sind für den Start von Benutzerdiensten nicht erforderlich. Syncthing wird beendet, sobald sich der Benutzer abmeldet. Unter Windows legt das Setupprogramm einen Eintrag in der Aufgabenplanung an, der den Start von Syncthing nach der Anmeldung erledigt. Android-Nutzer aktivieren in den Einstellungen von Syncthing-Fork den Autostart unter „Verhalten“. Unter „Laufkonditionen“ lässt sich einstellen, ob das Programm nur bei WLAN-Verbindungen oder auch bei mobilen Datenverbindungen starten soll.

Manueller Start ohne Systemd: Bei der Installation richtet Syncthing zwei Programmstarter ein. Über „Start Syncthing“ starten Sie das Programm, die Konfigurationsoberfläche lässt sich über „Syncthing Web UI“ aufrufen.

Syncthing konfigurieren

Wir gehen davon aus, dass Sie die Software auf einem Server-PC und mindestens einem Client-PC eingerichtet haben.

Schritt 1: Auf dem Server sollte die Web­oberfläche für die Konfiguration im lokalen Netzwerk verfügbar sein. Dazu öffnen Sie die Datei „/home/[User]/.local/state/syncthing/config.xml“ in einem Texteditor. Suchen Sie nach „127.0.0.1:8384“ und tragen Sie stattdessen „0.0.0.0:8384“ ein. Starten Sie den Dienst danach neu:

sudo systemctl restart syncthing@[User].service

Schritt 2: Auf dem Client-PC öffnen in einem ersten Tab die URL „http://127.0.0.1:8384“ der lokalen Installation und in einem anderen“ http://[Server-IP]:8348“ für die Oberfläche des Servers. Beide sind ohne Benutzernamen und Passwort konfiguriert, worauf Sie Syncthing hinweist. Klicken Sie in der Meldung jeweils auf „Einstellungen“, wechseln Sie auf die Registerkarte „GUI“ und vergeben Sie Benutzernamen und Passwort. Nach einem Klick auf „Speichern“ melden Sie sich an.

Schritt 3: Machen Sie nun die Geräte miteinander bekannt. Beim Client-PC klicken Sie unter „Externe Geräte“ auf „Gerät hinzufügen“. Im Fenster klicken Sie die Gerätekennung des Server-PCs an, geben eine aussagekräftige Bezeichnung unter „Gerätename“ ein und klicken auf „Speichern“. Wechseln Sie zur Oberfläche des Server-PCs, klicken Sie in der Meldung auf „Gerät hinzufügen“ und dann auf „Speichern“. Sind bereits mehrere Syncthing-Installationen im Netz vorhanden, sehen Sie beim Server-PC unter „Aktionen –› Eigene Kennung“ nach, um ihn zu identifizieren.

Schritt 4: In der Konfiguration des Client-PCs klicken Sie auf „Ordner hinzufügen“. Vergeben Sie eine Bezeichnung wie „Bilder ([Rechnername])“, und geben Sie unter „Ordnerpfad“ den Pfad ein, beispielsweise „~/Bilder“. Auf der Registerkarte „Teilen“ setzen Sie ein Häkchen vor die Bezeichnung des Server-PCs und klicken auf „Speichern“.

Schritt 5: In der Weboberfläche des Server-PCs klicken Sie in der Meldung auf „Hinzufügen“. Unter „Ordnerpfad“ übernehmen Sie die Vorgabe oder Sie verwenden
beispielsweise „~/Sync/Bilder([Rechner name])“, damit nicht alle Ordner im Hauptverzeichnis landen. Auf der Registerkarte „Dateiversionierung“ wählen Sie „Einfache Dateiversionierung“, damit Syncthing Sicherungskopien der Dateien erstellt. Klicken Sie auf „Speichern“.

Ziel-PC beim Client eintragen: Auf der Registerkarte „Teilen“ setzen Sie ein Häkchen vor den Namen des Server-PCs. Nach dem Klick auf „Speichern“ akzeptieren Sie am Server die Aktion mit „Hinzufügen“.

Die Schritte 4 und 5 wiederholen Sie für alle Ordner, die Sie synchronisieren möchten.

Sollte gelegentlich eine Datei verloren gehen, gehen Sie auf dem Server-PC bei aktivierter Dateiversionierung auf den betroffenen Ordner und klicken auf „Versionen“. Syncthing zeigt an, welche Versionen verfügbar sind. Klicken Sie neben der gewünschten Datei auf „Nicht wiederherstellen“, wählen Sie das Datum der gespeicherten Version, klicken Sie auf „Wiederherstellen“ und bestätigen Sie mit „Ja“. 

Alternativ können Sie auf dem Server-PC im synchronisierten Ordner das Verzeichnis „.stversions“ manuell öffnen, wo die archivierten Dateien mit Zeitstempel vorliegen.