So sichern Sie große Verzeichnisse mit Unison unter Ubuntu 18.04

Der Autor hat dieFree and Open Source Fundausgewählt, um eine Spende im Rahmen desWrite for DOnations-Programms zu erhalten.

Einführung

Unison ist ein Open-Source-Tool zur Dateisynchronisierung. Es ist sehr effizient bei der Sicherung großer Datenmengen, bei denen nur wenige Dateien hinzugefügt oder aktualisiert wurden. Diese Situation tritt beispielsweise auf dem Dateiserver eines UnternehmensSambaoder einem E-Mail-Server auf.

Die Mehrheit der Dateien auf diesen Servern bleibt gleich, während eine kleine Anzahl jeden Tag hinzugefügt oder geändert wird. Unison ist in der Lage, diese neuen Dateien extrem schnell zu erkennen und zu sichern - selbst wenn es Millionen von Dateien und Terabytes an Daten gibt. In diesen Situationen können herkömmliche Tools wiersync länger dauern, um denselben Sicherungsvorgang auszuführen.

In diesem Lernprogramm installieren und konfigurieren Sie Unison auf zwei Servern und verwenden es zum Sichern eines Verzeichnisses. Sie konfigurieren Unison auch so, dass SSH als sicheres Kommunikationsprotokoll verwendet wird, und erstellen eincron job, um Unison regelmäßig auszuführen.

Voraussetzungen

Bevor Sie mit diesem Handbuch beginnen, benötigen Sie Folgendes:

In diesem Handbuch werden zwei Server verwendet:

  • primary Server: Der Server, auf dem sich die Daten befinden, die Sie sichern möchten.

  • backup Server: Der Server, auf dem die gesicherten Daten gehostet werden.

[[Schritt 1 - Erstellen zusätzlicher Benutzer ohne Rootberechtigung]] == Schritt 1 - Erstellen zusätzlicher Benutzer ohne Rootberechtigung

Das Tutorial vonInitial Server Setup with Ubuntu 18.04führte Sie durch die Erstellung eines Nicht-Root-Sudo-Benutzers namenssammy auf dem Server vonprimary undbackup. In diesem Schritt erstellen Sie zwei neue Benutzer, einen auf dem Server vonprimaryund einen auf dem Server vonbackup. Dies verhindert Verwirrung beim Durcharbeiten des Handbuchs. Auf dembackup-Server ist ein alternativer Nicht-Root-Sudo-Benutzer erforderlich, wenn die SSH-Sicherheitskonfiguration am Ende des Handbuchs aktiviert ist.

Sie müssen sich sowohl amprimary als auch ambackup Server alssammy Benutzer über SSH in zwei Terminalfenstern anmelden. Die folgenden zwei SSH-Befehle melden Sie bei diesen Servern an:

ssh sammy@primary_server_ip
ssh sammy@backup_server_ip

Erstellen Sie zunächst auf dem Server vonprimarymit diesem Befehl einen neuen Benutzer namensprimary_user:

sudo adduser primary_user

Geben Sie ihnen dann die Zugriffsrechte vonsudo:

sudo usermod -aG sudo primary_user

Ändern Sie schließlich die Konten inprimary_user:

su - primary_user

Führen Sie als Nächstes die gleichen Schritte auf dem Server vonbackupaus, erstellen Sie jedoch einen neuen Benutzer mit dem Namenbackup_user. Stellen Sie sicher, dass Sie für den Rest des Handbuchs als diese Benutzer bei den Servernprimary undbackup angemeldet sind.

Nachdem Sie die erforderlichen Benutzer auf beiden Servern erstellt haben, können Sie mit der Installation der Unison-Software fortfahren.

[[Schritt 2 - Installieren von Unison auf beiden Servern]] == Schritt 2 - Installieren von Unison auf beiden Servern

In diesem Schritt installieren Sie das Unison-Paket auf beiden Servern.

Sie verwenden den Ubuntu-Paketmanagerapt, um Unison auf beiden Servern zu installieren. Wenn Sieapt zum ersten Mal seit einiger Zeit verwenden, sollten Sie den lokalen Paketindex mit dem folgenden Befehl aktualisieren:

sudo apt-get update

Dadurch wird sichergestellt, dass Sie die neueste Version von Unison installieren. Dies hilft auch, Installationsfehler zu vermeiden.

Als nächstes installieren Sie Unison:

sudo apt-get install unison

Sie haben nun die Installation von Unison abgeschlossen. Im nächsten Schritt konfigurieren Sie SSH so, dass Unison zwischen den beiden Servern kommunizieren kann.

[[Schritt-3 - Erstellen von SSH-Schlüsseln und Konfigurieren von SSH]] == Schritt 3 - Erstellen von SSH-Schlüsseln und Konfigurieren von SSH

Als erstes müssen Sie ein SSH-Schlüsselpaar auf demprimary-Server erstellen, da Sie die schlüsselbasierte Authentifizierung für die SSH-Verbindung verwenden. Der Vorteil der schlüsselbasierten Authentifizierung besteht darin, dass eine sichere Verbindung ohne Eingabe eines Kennworts möglich ist. Dies ist wichtig, da Sie ein automatisiertes Sicherungsverfahren erstellen, das bei jedem Auftreten ohne Eingabe eines Kennworts ausgeführt werden muss.

Sobald Sie dieses Schlüsselpaar auf dem Server vonprimaryhaben, kopieren Sie den öffentlichen Schlüssel auf den Server vonbackupund testen, ob Unison über SSH zwischen den Servern kommunizieren kann.

Stellen Sie zunächst sicher, dass das Verzeichnis.sshvorhanden ist:

mkdir .ssh

Führen Sie den folgenden Befehl aus dem Ausgangsverzeichnis vonprimary_userauf dem Server vonprimaryaus, um ein SSH-Schlüsselpaar zu generieren:

ssh-keygen -t rsa -b 4096 -f .ssh/unison-primary

Wenn Sie ein SSH-Schlüsselpaar erstellen, verwenden Sie normalerweise ein sicheres Kennwort. Unison wird jedoch automatisch ausgeführt, sodass ein Kennwort nicht bei jeder Ausführung manuell eingegeben werden kann. Drücken Sie die TasteENTER, ohne ein Passwort einzugeben. Dadurch wird ein passwortloses SSH-Schlüsselpaar generiert.

Die hier verwendeten Optionen bedeuten Folgendes:

  • -t rsa: Hiermit wird der Typ des Schlüssels festgelegt, der erstellt wird. RSA-Schlüssel sind am kompatibelsten.

  • -b 4096: Hiermit wird die Länge des Schlüssels festgelegt. Je länger ein Schlüssel ist, desto sicherer ist er. Eine Schlüssellänge von4096 ist die aktuell empfohlene Schlüssellänge für RSA-Schlüssel.

  • -f .ssh/unison-primary: Hiermit werden der Name des Schlüssels und der Speicherort festgelegt. In diesem Fall speichern Sie den Schlüssel unter einem Namen Ihrer Wahl im Standardverzeichnis von SSH,.ssh.

Der vorstehende Befehl erstellt den öffentlichen und den privaten SSH-Schlüssel in den folgenden beiden Dateien:

  • .ssh/unison-primary

  • .ssh/unison-primary.pub

Der erste ist der private SSH-Schlüssel und der zweite ist der öffentliche Schlüssel. Sie müssen den Inhalt der öffentlichen Schlüsseldatei auf den Server vonbackupkopieren. Der einfachste Weg, den Inhalt der öffentlichen Schlüsseldatei zum Kopieren anzuzeigen, besteht darin, den Inhalt mit dem Befehlcatauf dem Terminal zu drucken:

cat .ssh/unison-primary.pub

Öffnen Sie auf dem Server vonbackupim Ausgangsverzeichnis vonbackup_userdie Datei von.ssh/authorized_keysmit einem Texteditor. Hier verwenden Sienano:

nano .ssh/authorized_keys

Fügen Sie den öffentlichen Schlüssel in den Editor ein, speichern Sie ihn und beenden Sie ihn.

Sie können jetzt testen, ob die SSH-Konfiguration funktioniert, indem Sie sich vomprimary-Server über SSH beimbackup anmelden. Dies ist wichtig, da Sie den Schlüsselfingerabdruck des SSH-Servers vombackup-Server akzeptieren und speichern müssen, da Unison sonst nicht funktioniert. Führen Sie in Ihrem Terminal auf dem Server vonprimaryden folgenden Befehl im Home-Verzeichnis vonprimary_useraus:

ssh -i .ssh/unison-primary backup_user@backup_server_ip

Die Option-i .ssh/unison-primary weist SSH an, einen bestimmten Schlüssel oder eine bestimmte Identitätsdatei zu verwenden. Hier verwenden Sie den von Ihnen erstellten neuenunison-primary-Schlüssel.

Akzeptieren Sie den Fingerabdruck, indem SieY und dannENTER drücken, und melden Sie sich an und ab. Sie müssen nur bestätigen, dass SSH zwischen den Servern funktioniert, und den SSH-Fingerabdruck desbackup-Servers speichern. Der Fingerabdruck kann nur manuell gespeichert werden. Dies muss erfolgen, bevor der Vorgang später im Lernprogramm automatisiert wird.

Überprüfen Sie als Nächstes, ob Unison eine Verbindung herstellt, indem Sie den folgenden Befehl aus dem Ausgangsverzeichnis vonprimary_userauf dem Server vonprimaryausführen:

ssh -i .ssh/unison-primary backup_user@backup_server_ip unison -version

In diesem Befehl haben Sie denselben SSH-Befehl verwendet, den Sie zum Testen der Verbindung verwendet haben, und am Ende den Befehlunisonhinzugefügt. Wenn ein Befehl am Ende einer SSH-Verbindung platziert wird, meldet sich SSH an, führt den Befehl aus und beendet sich dann. Der Befehlunison -version weist Unison an, seine Versionsnummer zu drucken.

Wenn alles funktioniert, wird eine Antwort mit der Version von Unison auf dembackup-Server angezeigt:

Outputunison version 2.48.3

Nachdem Sie bestätigt haben, dass Unison mit den SSH-Schlüsseln zwischen den Servern kommunizieren kann, können Sie mit der Konfiguration von Unison fortfahren.

[[Schritt-4 - Konfigurieren von Unison]] == Schritt 4 - Konfigurieren von Unison

In diesem Schritt konfigurieren Sie Unison so, dass eine einfache Einweg-Sicherung für ein Verzeichnis vom Serverprimaryzum Serverbackupausgeführt wird.

Um Unison zu konfigurieren, müssen Sie zuerst das Konfigurationsverzeichnis unter dem Ausgangsverzeichnis vonprimary_userauf dem Server vonprimaryerstellen:

mkdir .unison

Als Nächstes müssen Sie eine neue Datei mit dem Namendefault.prf in einem Texteditor im Verzeichnis.unison öffnen. Diese Datei enthält die Unison-Konfiguration. Öffnen Sie die Datei mit dem folgenden Befehl:

nano .unison/default.prf

Dann geben Sie folgendes ein:

unison/default.prf
force = /home/primary_user/data
sshargs = -i /home/primary_user/.ssh/unison-primary

Die Bedeutung dieser Zeilen ist wie folgt

  • force: Dadurch wird sichergestellt, dass Änderungen nur vom Server vonprimaryauf den Server vonbackupübertragen werden. Der Pfad von/home/primary_user/dataist der Speicherort des Verzeichnisses, in dem sich die Daten befinden, die Sie sichern möchten.

  • sshargs: Diese Option weist Unison an, den von Ihnen generierten SSH-Schlüssel zu verwenden.

Wenn sich das Verzeichnis mit den Daten, die Sie sichern möchten, nicht im Ausgangsverzeichnis vonprimary_userbefindet, müssen Sie sicherstellen, dass es vonprimary_user gelesen und beschrieben werden kann. Wenn Sie mit Linux-Besitzern und -Berechtigungen nicht vertraut sind, lesen Sie die Anleitung zuIntroduction to Linux Permissions, um weitere Informationen zu erhalten.

Sie haben jetzt Unison konfiguriert und können es testen, indem Sie ein Verzeichnis sichern.

[[Schritt 5 - Sichern eines Verzeichnisses mit Unison]] == Schritt 5 - Sichern eines Verzeichnisses mit Unison

Sie können jetzt ein Verzeichnis sichern, wenn Unison konfiguriert ist. Sie sichern das Verzeichnis/home/primary_user/dataauf dem Server vonprimaryim Verzeichnis/home/backup_user/data/auf dem Server vonbackup. Das Verzeichnis, das die zu sichernden Daten enthält, muss dasselbe Verzeichnis sein, das Sie in.unison/default.prf neben der Option force eingegeben haben.

Sie benötigen einige Daten zum Sichern, um zu testen, ob Unison funktioniert. Erstellen Sie einige leere Dateien auf dem Server vonprimaryund prüfen Sie, ob Unison sie auf den Server vonbackupübertragen hat.

Erstellen Sie zunächst das Verzeichnis, in dem die zu sichernden Daten gespeichert werden sollen, indem Sie den folgenden Befehl aus dem Ausgangsverzeichnis vonprimary_userausführen:

mkdir /home/primary_user/data

Verwenden Sie als Nächstes den Befehltouch, um fünf leere Dateien zu erstellen:

touch /home/primary_user/data/file{1..5}

Der letzte Teil des Befehls,file{1..5}, verwendet die Bash-Klammererweiterung, um die fünf Dateien zu erstellen. Wenn bash{1..5} gegeben wird, werden automatisch die fehlenden Zahlen2,3 und4 ausgefüllt. Diese Technik ist nützlich, um schnell mehrere Dateien aufzulisten.

Nachdem Sie das Verzeichnisdataund einige Testdateien zum Sichern haben, können Sie Unison ausführen, um die Dateien auf dem Server vonbackupzu sichern. Der folgende Befehl erledigt dies:

unison -batch -auto /home/primary_user/data ssh://backup_user@backup_server_ip//home/backup_user/data

Diese Optionen bewirken Folgendes:

  • batch - Wird ausgeführt, ohne Fragen zu stellen.

  • auto - Akzeptiert automatisch alle nicht widersprüchlichen Aktionen.

Da Sie Unison in einem einfachen Einweg-Synchronisationsmodus verwenden, müssen Sie keine Konflikte lösen. Dies bedeutet, dass Sie diese Optionen sicher einstellen können.

Ein Konflikt kann nur in der anderen Betriebsart von Unison auftreten, in der er in beide Richtungen synchronisiert wird. Ein solcher Anwendungsfall wäre das Synchronisieren eines Verzeichnisses auf dem Laptop und dem Desktop einer anderen Person. Wenn sie eine Datei auf dem Desktop aktualisieren, möchten sie, dass diese Änderung auf den Laptop und umgekehrt übertragen wird. Ein Konflikt tritt auf, wenn dieselbe Datei an beiden Enden geändert wird, bevor eine Unison-Synchronisierung stattfindet, und Unison nicht automatisch entscheiden kann, welche Datei aufbewahrt und welche überschrieben werden soll.

In einem Einweg-Push-Modus bleiben die Daten aufprimary immer erhalten und die Daten auf der Sicherung werden überschrieben.

Dieser Befehl gibt beim ersten Ausführen eine lange Nachricht aus. Die Nachricht lautet wie folgt:

OutputContacting server...
Connected [//primary_server_ip//home/primary_user/data -> //primary_server_ip//home/backup_user/data]
Looking for changes
Warning: No archive files were found for these roots, whose canonical names are:
        /home/primary_user/data
        //backup_server_ip//home/backup_user/data
This can happen either
because this is the first time you have synchronized these roots,
or because you have upgraded Unison to a new version with a different
archive format.

Update detection may take a while on this run if the replicas are
large.

Unison will assume that the 'last synchronized state' of both replicas
was completely empty.  This means that any files that are different
will be reported as conflicts, and any files that exist only on one
replica will be judged as new and propagated to the other replica.
If the two replicas are identical, then no changes will be reported.

If you see this message repeatedly, it may be because one of your machines
is getting its address from DHCP, which is causing its host name to change
between synchronizations.  See the documentation for the UNISONLOCALHOSTNAME
environment variable for advice on how to correct this.

Donations to the Unison project are gratefully accepted:
http://www.cis.upenn.edu/~bcpierce/unison

  Waiting for changes from server
Reconciling changes
dir      ---->            /
Propagating updates
UNISON 2.48.3 started propagating changes at 16:30:43.70 on 03 Apr 2019
[BGN] Copying  from /home/primary_user/data to //backup_server_ip//home/backup_user/data
[END] Copying
UNISON 2.48.3 finished propagating changes at 16:30:43.71 on 03 Apr 2019
Saving synchronizer state
Synchronization complete at 16:30:43  (1 item transferred, 0 skipped, 0 failed)

Diese Information warnt davor, dass dies die erste Synchronisation ist. Es enthält auch Tipps zur Behebung eines Problems, wenn diese Meldung bei jedem Synchronisierungslauf angezeigt wird. Im letzten Abschnitt erfahren Sie, welche Daten Unison während dieses Laufs synchronisiert hat.

Bei jedem weiteren Durchlauf werden viel weniger Informationen gedruckt. Hier ist die Ausgabe, wenn keine Dateien aktualisiert wurden:

OutputContacting server...
Connected [//primary_server_ip//home/primary_user/data -> //backup_server_ip//home/backup_user/data]
Looking for changes
  Waiting for changes from server
Reconciling changes
Nothing to do: replicas have not changed since last sync.

Dies ist die Ausgabe, wenn/data/file1 auf dem Server vonprimarygeändert wird:

OutputContacting server...
Connected [//primary_server_ip//home/primary_user/data -> //backup_server_ip//home/backup_user/data]
Looking for changes
  Waiting for changes from server
Reconciling changes
changed  ---->            file1
Propagating updates
UNISON 2.48.3 started propagating changes at 16:38:37.11 on 03 Apr 2019
[BGN] Updating file file1 from /home/primary_user/data to //backup_server_ip//home/backup_user/data
[END] Updating file file1
UNISON 2.48.3 finished propagating changes at 16:38:37.16 on 03 Apr 2019
Saving synchronizer state
Synchronization complete at 16:38:37  (1 item transferred, 0 skipped, 0 failed)

Nach jedem Synchronisationslauf erstellt der Server vonbackupeine exakte Kopie des Verzeichnisses vondataauf dem Server vonprimary.

[.warning] #Warning: Alle neuen Dateien oder Änderungen im Verzeichnisdata auf dem Server vonbackupgehen verloren, wenn Sie Unison.
# ausführen.

Sie können jetzt Unison ausführen, um ein Verzeichnis zu sichern. Im nächsten Schritt automatisieren Sie den Sicherungsprozess, indem Sie Unison mitcron ausführen.

[[Schritt-6 - Erstellen eines Unison-Cron-Jobs]] == Schritt 6 - Erstellen eines Unison-Cron-Jobs

In diesem Abschnitt erstellen Sie einen Job voncron, der Unison ausführt, und sichern das Verzeichnis vondatamit einer bestimmten Häufigkeit auf dem Server vonbackup.

crontab ist eine Datei, die vom Cron-Prozess gelesen wird. Die darin enthaltenen Befehle werden in den Cron-Prozess geladen und in den angegebenen Intervallen ausgeführt.

Sie können den Inhalt der crontab für Ihren aktuellen Benutzer anzeigen, indem Sie den folgenden Befehl ausführen:

crontab -l

Die Option-l listet den Inhalt der Crontab des aktuellen Benutzers auf. Wenn Sie die crontab für diesen Benutzer noch nicht bearbeitet haben, wird die folgende Fehlermeldung angezeigt, da noch keine crontab-Datei vorhanden ist:

Outputno crontab for primary_user

Führen Sie als Nächstes den Befehlcrontab auf dem Serverprimarymit dem Flag-e aus, um ihn im Bearbeitungsmodus zu öffnen:

crontab -e

Wenn Sie keinen Standard-Befehlszeileneditor konfiguriert haben, werden Sie beim ersten Ausführen des Befehls aufgefordert, einen Editor auszuwählen. Wählen Sie den Editor Ihrer Wahl, um die Crontab zu öffnen.

Wenn Sie die Crontab geöffnet haben, fügen Sie den folgenden Befehl in die erste leere Zeile unter dem vorhandenen Text ein:

...
* */3 * * * /usr/bin/unison -log -logfile /var/log/unison.log -auto -batch -silent /home/primary_user/data ssh://backup_user@backup_server_ip//home/backup_user/data

Der Befehl, den Sie verwenden, ist fast der gleiche wie der, den Sie inStep 5 für die manuelle Sicherung verwendet haben, jedoch mit einigen zusätzlichen Optionen. Diese zusätzlichen Optionen lauten wie folgt:

  • -silent: Deaktiviert alle Ausgaben außer Fehlern. Eine normale Ausgabe ist nicht erforderlich, wenn Unison über die crontab ausgeführt wird, da niemand zum Lesen vorhanden ist.

  • -log: Weist Unison an, seine Aktionen zu protokollieren.

  • -logfile: Gibt an, wo Unison seine Aktionen protokolliert. In diesem Beispiel wird Unison alle 3 Stunden ausgeführt. Sie können dies auf jede Frequenz ändern, die Ihren Anforderungen besser entspricht.

Wann immer Sie die crontab bearbeiten, müssen Sie immer eine leere Zeile am unteren Rand einfügen, bevor Sie speichern und beenden. Andernfalls lädt cron die crontab-Datei möglicherweise nicht richtig. Dies kann dazu führen, dass die Befehle nicht ausgeführt werden.

Speichern und schließen Sie die Datei, sobald Sie diese Änderungen vorgenommen haben.

Erstellen Sie als Nächstes die Protokolldatei, in die Unison auf demprimary-Server schreibt. Der folgende Befehl erstellt diese Datei:

sudo touch /var/log/unison.log

Als nächstes machen Sieprimary_user zum Eigentümer der Datei.

sudo chown primary_user /var/log/unison.log

Sie können den Status der Unison-Sicherungen überprüfen, indem Sie die Protokolldatei unter/var/log/unison.log lesen. Unison protokolliert nur dann etwas, wenn eine neue oder aktualisierte Datei gesichert wurde oder ein Fehler aufgetreten ist.

Unison wird jetzt regelmäßig von der Crontab gesichert. Der letzte und optionale Schritt besteht darin, die SSH-Konfiguration sicherer zu machen.

[[Schritt-7-optional -—- Sichern-SSH]] == Schritt 7 (Optional) - Sichern von SSH

In diesem Handbuch haben Sie einen SSH-Schlüssel ohne Kennwort erstellt und verwendet. Dies ist ein Sicherheitsrisiko, das Sie beheben können, indem Sie einschränken, wasbackup_user tun können, wenn sie sich über SSH beimbackup-Server anmelden.

Sie tun dies, indem Sie SSH so konfigurieren, dassbackup_user nur einen einzigen Befehl ausführen können, wenn Sie über SSH angemeldet sind. Dies bedeutet, dass der von Ihnen erstellte SSH-Schlüssel nur zum Ausführen der Unison-Sicherungen und sonst nichts verwendet werden kann. Dies hat zur Folge, dass Sie nicht alsbackup_user auf denbackup-Server SSH können. Dies liegt daran, dass für die Anmeldung mehr als der einzelne zulässige Befehl erforderlich ist.

Wenn Sie alsbackup_user auf denbackup-Server zugreifen müssen, sollten Sie sich zuerst alssammy-Benutzer anmelden und dann mitsu - backup_user zubackup_user wechseln.

Bearbeiten Sie die SSH-Konfigurationsdatei auf dem Server vonbackupunter/etc/ssh/sshd_config:

sudo nano /etc/ssh/sshd_config

Fügen Sie dann die folgenden Zeilen am Ende der Datei hinzu:

/etc/ssh/sshd_config

Match User backup_user
  ForceCommand unison -server

Diese Konfigurationsoptionen bedeuten Folgendes:

  • Match User: Wenn sich der aufgelistete Benutzer anmeldet, wendet SSH die folgende und eingerückte Konfigurationsoption an.

  • ForceCommand: Dies beschränkt den übereinstimmenden Benutzer auf den folgenden Befehl. In diesem Fall können diebackup_user nur den Befehlunison -server ausführen.

Speichern und beenden Sie Ihren Texteditor. Laden Sie als Nächstes den SSH-Dienst neu, um die neue Konfiguration zu aktivieren:

sudo systemctl reload ssh.service

Sie können dies testen, indem Sie versuchen, sich beim Serverbackupalsbackup_userüber SSH vom Serverprimaryanzumelden.

$ ssh -i .ssh/unison-primary backup_user@backcup_server_ip

Wenn die Einstellungen von/etc/ssh/sshd_configfunktionieren, wird Folgendes angezeigt:

OutputUnison 2.48

Die SSH-Sitzung bleibt hängen, bis die Sitzung mitCTRL + C beendet wird, da Unison auf einen Befehl wartet.

Dies zeigt, dass der Unison-Server beim Anmelden automatisch aufgerufen wurde und kein anderer Zugriff außerhalb der Kommunikation mit dem Unison-Server möglich ist.

Sie haben jetzt ein funktionierendes und sicheres Unison-Backup-System, mit dem Sie Ihre Daten so oft sichern können, wie Sie möchten.

Fazit

In diesem Handbuch haben Sie die Unison-Dateisynchronisationssoftware installiert und konfiguriert, um ein Verzeichnis über SSH zu sichern. Sie haben cron auch so konfiguriert, dass Backups nach einem festgelegten Zeitplan automatisch ausgeführt und SSH gesichert werden, damit der kennwortlose Schlüssel nicht missbraucht werden kann.

Bei der Entscheidung, ob Sie Unison verwenden sollten, sollten Sie einige Dinge beachten:

  • Unison ist möglicherweise nicht die beste Wahl, wenn Sie weniger Dateien oder weniger Daten haben. In diesem Fall wäre rsync die geeignetere Wahl. Weitere Informationen zur Verwendung von rsync finden Sie im HandbuchHow To Use Rsync to Sync Local and Remote Directories on a VPS.

  • Das Sichern großer Datenmengen kann lange dauern und Ihre Bandbreitenzuweisung über öffentliche Netzwerkschnittstellen in Anspruch nehmen. Wenn Ihreprimary- undbackup-Server beide DigitalOcean Droplets sind, können Sie die Unison-Sicherung viel schneller und sicherer abschließen, wenn Sie ein privates Netzwerk verwenden. Weitere Informationen zu den kostenlosen privaten DigitalOcean-Netzwerken finden Sie in der Dokumentation zuPrivate Network Overview.