GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren und verwenden Sie Syncthing unter Ubuntu 20.04

Syncthing ist ein kostenloses Open-Source-Programm zum Synchronisieren von Dateien zwischen Geräten aus einem lokalen Netzwerk oder entfernten Geräten über das Internet. Es verwendet eine Peer-to-Peer-Architektur und die kontinuierliche Dateisynchronisierung tauscht Daten direkt zwischen Geräten auf vollautomatische Weise aus.

Syncthing kann verwendet werden, um Dateien und Verzeichnisse in Echtzeit zu synchronisieren. Die gesamte Datenübertragung zwischen mehreren Geräten ist sicher und mit TLS verschlüsselt.

Schlüsselfunktionen von Syncthing sind:

  • LDAP-Authentifizierungsunterstützung.
  • Einweg-Synchronisierungsunterstützung.
  • Schnelle Synchronisierungsgeschwindigkeit.
  • Verwenden Sie CLI und GUI
  • Plattformübergreifend verfügbar für:Linux, Android, Unix, Solaris, Windows und Mac OS X.

In diesem Tutorial lernen wir, wie man Syncthing installiert auf Ubuntu 20.04 .

Voraussetzungen

  • Zwei Server mit installiertem Ubuntu 20.04.
  • Benutzer mit sudo- und root-Zugriff.
  • Zwei konfigurierte öffentliche IP-Adressen.

Installieren Sie Syncthing auf Ubuntu

Syncthing ist im offiziellen Repository verfügbar. Befolgen Sie die Installationsschritte, um das Syncthing-Repo hinzuzufügen und auf Ubuntu zu installieren.

Aktualisieren Sie zuerst die Systempakete mit dem folgenden Befehl:

apt update

Installieren Sie alle Abhängigkeiten mit dem folgenden Befehl:

apt-get install gnupg2 curl apt-transport-https

Fügen Sie den Freigabeschlüssel hinzu und laden Sie ihn herunter:

curl -s https://syncthing.net/release-key.txt | apt-key add -

Fügen Sie das Syncthing-Repository mit dem folgenden Befehl zu APT hinzu:

echo "deb https://apt.syncthing.net/ syncthing release" > /etc/apt/sources.list.d/syncthing.list

Wenn Sie fertig sind, aktualisieren Sie die Systempakete noch einmal und installieren Sie Syncthing Paket:

apt-get update
apt-get install syncthing

Überprüfen Sie die Installation, indem Sie die Syncthing-Version überprüfen:

syncthing --version

Ausgabe:

syncthing v1.18.1 "Fermium Flea" (go1.16.6 linux-amd64) [email protected] 2021-07-30 12:41:57 UTC [noupgrade]

Wenn Sie eine ähnliche Ausgabe erhalten, wurde Syncthing erfolgreich installiert.

HINWEIS: Sie müssen dieselben Installationsschritte auf dem anderen Server wiederholen.

Erstellen Sie eine Systemd-Unit-Datei

Der nächste Schritt besteht darin, eine systemd-Einheitendatei zu erstellen, um den Syncthing-Dienst zu verwalten.

Erstellen Sie mit dem folgenden Befehl eine Datei in /etc/systemd/system/.

nano /etc/systemd/system/[email protected]

Fügen Sie der Konfigurationsdatei die folgenden Zeilen hinzu:

[Unit]
Description=Syncthing - Open Source Continuous File Synchronization for %I
Documentation=man:syncthing(1)
After=network.target

[Service]
User=%i
ExecStart=/usr/bin/syncthing -no-browser -gui-address="0.0.0.0:8384" -no-restart -logflags=0 Restart=on-failure
SuccessExitStatus=3 4
RestartForceExitStatus=3 4

[Install]
WantedBy=multi-user.target

Im Teil [Service] in Zeile -gui-address="0.0.0.0:8384" Fügen Sie Ihre öffentliche IP-Adresse des ersten Servers hinzu und lassen Sie denselben 8384-Port.

Konfiguration speichern und Datei schließen.

Laden Sie nun den systemd-Daemon neu, um die Konfiguration zu übernehmen:

systemctl daemon-reload

Nachdem der Daemon neu geladen wurde, starten Sie den Synchting-Dienst, der auf Ihren Benutzer verweist mit dem folgenden Befehl.

systemctl start syncthing@yourUser

Überprüfen Sie den Status des Syncthing-Dienstes:

systemctl status syncthing@yourUser

Der Dienst sollte aktiv (laufend) sein.

Der Synchting-Dienst überwacht Port 8384, Sie können dies mit dem Befehl ss überprüfen.

ss -antpl | grep 8384

Ausgabe:

LISTEN    0         4096          45.79.208.51:8384             0.0.0.0:*        users:(("syncthing",pid=13837,fd=20)) 

HINWEIS: Wiederholen Sie dieselben Schritte auf dem anderen Server.

Konfigurieren der Syncthing-Weboberfläche

Öffnen Sie Ihren Webbrowser und greifen Sie mit URLs auf das Syncthing-Webinterface zu.

http://first-server-ip:8384
http://second-server-ip:8384

Das Syncthing-Webinterface verwendet Port 8384.

Nach der Anmeldung sollten Sie die folgenden Meldungen erhalten.

Gehen Sie als Nächstes zu Aktionen> Einstellungen> GUI, um einen Benutzernamen und ein Passwort einzurichten, und aktivieren Sie die Option „HTTPS für GUI verwenden.“

Klicken Sie auf die Schaltfläche Speichern, und Sie werden zur Anmeldeseite von Syncthing weitergeleitet, auf der Sie aufgefordert werden, neue Anmeldeinformationen für die Anmeldung einzugeben.

Wie Sie sehen können, ist die Verbindung nach der Anmeldung jetzt mit HTTPS gesichert.

HINWEIS: Wiederholen und konfigurieren Sie diesen Vorgang auch auf dem zweiten Server.

Anschließen von Geräten

Für die Verzeichnissynchronisierung müssen wir die Geräte-IDs beider Server zusammenführen und verbinden und die Geräte-ID jedes Servers zu einem anderen Server hinzufügen, um Dateien zu synchronisieren.

Gehen Sie dazu auf beiden Servern zu Aktionen> ID anzeigen. Sie sehen die folgende Geräteidentifikation und den folgenden QR-Code.

Gehen Sie nun zum ersten Syncthing-Server. Klicken Sie unten, wo sich der Abschnitt für Remote-Geräte befindet, auf die Schaltfläche +Remote-Gerät hinzufügen.

Geben Sie die Geräte-ID Ihres zweiten Servers an und klicken Sie auf die Schaltfläche Speichern. Optional kann auch der Gerätename hinzugefügt werden, für eine klarere Ansicht.

Wiederholen Sie auf dem zweiten Server denselben Schritt. Gehen Sie zu Remote-Gerät hinzufügen.

Fügen Sie die Geräte-ID vom ersten Server hinzu und klicken Sie auf Speichern Schaltfläche.

Will sieht von beiden Seiten, dass die Geräte jetzt verbunden sind.

Verzeichnisse synchronisieren

Suchen Sie nach erfolgreichem Peering von Remote-Geräten den Abschnitt Ordner und klicken Sie auf die Schaltfläche +Ordner hinzufügen. Sie sollten das folgende neue Fenster sehen.

Geben Sie den Namen Ihres Sicherungsordners in der Ordnerbezeichnung im Abschnitt „Allgemein“ an. Gehen Sie dann zum Abschnitt Sharing-Karte und Sie sehen den folgenden Bildschirm.

Aktivieren Sie Ihr Gerät, um diesen Ordner freizugeben. In meinem Fall ist der Name server2 , und klicken Sie auf Speichern Schaltfläche.

Gehen Sie nun zum zweiten Server und klicken Sie auf die Schaltfläche Alle erneut scannen. Sie sollten den folgenden Bildschirm und eine neue Popup-Meldung sehen, um diesen neuen Ordner hinzuzufügen.

Klicken Sie auf die Schaltfläche Hinzufügen, um den auf dem ersten Server freigegebenen Sicherungsordner hinzuzufügen. Sie sollten jetzt den folgenden Bildschirm sehen.

Kann jetzt sehen, dass die Ordnersicherung synchronisiert und auf dem neuesten Stand ist.

Wann immer Sie Dateien im Backup-Ordner auf dem ersten Server erstellen oder ändern, werden sie automatisch mit dem zweiten Server synchronisiert, alle neuen Verzeichnisse und Dateien in diesem Backup-Ordner werden auf dem anderen Server gespiegelt.

Nur-Senden- und Nur-Empfangen-Ordner konfigurieren

Ein weiteres großartiges Feature von Syncthing ist, dass Sie gekoppelte Server zum Senden und Empfangen konfigurieren können, außerdem können sie so festgelegt werden, dass sie nur senden und nur empfangen.

Gehen Sie zum Abschnitt Ordner> Gewünschten Sicherungsordner auswählen und klicken Sie auf die Schaltfläche Bearbeiten und gehen Sie dann zur Abschnittskarte Erweitert. Sie werden das folgende Bild sehen.

Wählen Sie den Ordnertyp für Nur Senden/Nur Empfangen und klicken Sie auf die Schaltfläche Speichern.

Konfigurieren Sie angepasste Scan-Intervalle

Wenn Sie die CPU entlasten möchten und nicht ständig auf Synchronisierungsänderungen achten müssen, können Sie Watch for Changes deaktivieren und manuell festlegen, wie viele Minuten oder Stunden Sie Änderungen synchronisieren möchten.

Systemctl-Dienst wird überprüft

Gehen Sie zum gewünschten Gerät entweder auf Server1 oder Server2 und überprüfen Sie den Systemctl-Dienststatus, um zu sehen, wie dies im Backend mit dem folgenden Befehl funktioniert.

sudo systemctl status syncthing@yourUser

Ausgabe.

[email protected] - Syncthing - Open Source Continuous File Synchronization for linoxide
      Loaded: loaded (/etc/systemd/system/[email protected]; disabled; vendor preset: enabled)
      Active: active (running) since Wed 2021-08-25 13:46:53 UTC; 1h 4min ago
        Docs: man:syncthing(1)
    Main PID: 15543 (syncthing)
       Tasks: 13 (limit: 1071)
      Memory: 29.2M
      CGroup: /system.slice/system-syncthing.slice/[email protected]
              ├─15543 /usr/bin/syncthing -no-browser -gui-address=45.79.208.51:8384 -no-restart -logflags=0
              └─15548 /usr/bin/syncthing -no-browser -gui-address=45.79.208.51:8384 -no-restart -logflags=0
 Aug 25 13:52:58 li1307-51 syncthing[15543]: [6TZM3] INFO: Device BPENPLJ-L65BS5D-5HN7UL5-RNI3DQR-YZOR2LB-YFW7BKF-6LMWFXV-A4E3RQY client is "syncthing v1.18.1>
 Aug 25 13:52:58 li1307-51 syncthing[15543]: [6TZM3] INFO: Connection to BPENPLJ-L65BS5D-5HN7UL5-RNI3DQR-YZOR2LB-YFW7BKF-6LMWFXV-A4E3RQY at [2600:3c02::f03c:9>
 Aug 25 13:53:12 li1307-51 syncthing[15543]: [6TZM3] INFO: Established secure connection to BPENPLJ-L65BS5D-5HN7UL5-RNI3DQR-YZOR2LB-YFW7BKF-6LMWFXV-A4E3RQY at>
 Aug 25 13:53:12 li1307-51 syncthing[15543]: [6TZM3] INFO: Device BPENPLJ-L65BS5D-5HN7UL5-RNI3DQR-YZOR2LB-YFW7BKF-6LMWFXV-A4E3RQY client is "syncthing v1.18.1>
 Aug 25 14:13:42 li1307-51 syncthing[15543]: [6TZM3] INFO: Adding folder "Backup" (svkz5-mdnbo)
 Aug 25 14:13:42 li1307-51 syncthing[15543]: [6TZM3] INFO: No stored folder metadata for "svkz5-mdnbo"; recalculating
 Aug 25 14:13:42 li1307-51 syncthing[15543]: [6TZM3] INFO: Ready to synchronize "Backup" (svkz5-mdnbo) (sendreceive)
 Aug 25 14:13:42 li1307-51 syncthing[15543]: [6TZM3] INFO: Completed initial scan of sendreceive folder "Backup" (svkz5-mdnbo)

Schlussfolgerung

In diesem Tutorial haben wir gelernt, wie man Syncthing zum Synchronisieren von Verzeichnissen unter Ubuntu 20.04 installiert. Sie können mehr als zwei Geräte verwenden und synchronisieren und mit Verzeichnissen auf allen Computern auf dem neuesten Stand sein.

Bitte teilen Sie Ihre Erfahrungen mit Syncthing im Kommentarbereich mit.


Ubuntu
  1. So installieren und verwenden Sie Wine unter Ubuntu 20.04

  2. So installieren und verwenden Sie FFmpeg unter Ubuntu 18.04

  3. So installieren und verwenden Sie Wine unter Ubuntu 18.04

  4. So installieren und verwenden Sie Curl unter Ubuntu 18.04

  5. So installieren und verwenden Sie Docker in Ubuntu 20.04

So installieren und verwenden Sie AngularJS unter Ubuntu

So installieren und verwenden Sie Maldet unter Ubuntu 20.04

So installieren Sie Syncthing auf Ubuntu 20.04 und Ubuntu 21.04

So installieren und verwenden Sie Telnet unter Ubuntu 20.04

So installieren und verwenden Sie Ubuntu Cleaner

So installieren und verwenden Sie VeraCrypt unter Ubuntu 22.04