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

So synchronisieren Sie Dateien automatisch zwischen zwei Linux-Servern

Die Einrichtung eines Backup-Servers zur Übernahme des Betriebs eines primären Servers, wenn dieser Opfer von Serverausfallproblemen wird, ist eine Fähigkeit, die die meisten Linux-Benutzer und alle Linux-Administratoren beherrschen müssen. Es erspart Ihnen, sich Gedanken über das „was wäre, wenn“ zu machen ” Szenarien.

In einem Worst-Case-Szenario, in dem technische Probleme oder Versuche einer Serververletzung Ihren Primärserver vorübergehend oder dauerhaft zum Absturz bringen könnten, können Sie sich also immer auf das Vorhandensein eines Backup-Servers verlassen, der so konfiguriert ist, dass er als Zwillingsserverumgebung des Primär-/Hauptservers fungiert Server.

[ Das könnte Ihnen auch gefallen:So synchronisieren Sie zwei Webserver unter Linux automatisch ]

Der Backup-Server stellt sicher, dass Sie Ihre wichtigen Systemdatenkonfigurationen und Benutzerdateien nicht verlieren.

Rsync-Installation unter Linux

Nachdem Sie nun verstanden haben, wie wichtig es ist, zwei Server synchron zu haben, ist es Zeit für eine exemplarische Vorgehensweise, wie Sie das Ziel dieses Artikels erreichen können. Wir benötigen zwei aktive und funktionierende Server zusammen mit ihren jeweiligen IP-Adressen oder Domänennamen.

  • Die IP-Adresse für den Haupt-/Primärserver:3.135.207.xx .
  • Die IP-Adresse für den Sicherungs-/Sekundärserver:18.118.208.xx

Um diese beiden Server erfolgreich automatisch zu synchronisieren, benötigen wir die Hilfe von rsync Nützlichkeit. Unabhängig von der verwendeten Linux-Server-Distribution installieren Sie rsync von einem der folgenden Linux-Installationsbefehle.

Die Installation sollte sowohl auf Ihrem Primär-/Hauptserver als auch auf Ihrem Sekundär-/Sicherungsserver erfolgen.

$ sudo apt-get install rsync     [On Debian, Ubuntu and Mint]
$ sudo yum install rsync         [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
$ sudo emerge -a net-mis/rsync   [On Gentoo Linux]
$ sudo pacman -S rsync           [On Arch Linux]
$ sudo zypper install rsync      [On OpenSUSE]    

Zielverzeichnisdateien unter Linux mit Rsync synchronisieren

Nehmen wir zum Beispiel an, der Haupt-/Primärserver (3.135.207.xx ) hat das Verzeichnis LinuxShellTips mit den folgenden hervorgehobenen Dateien, die mit dem Sicherungs-/Sekundärserver synchronisiert werden müssen (18.118.208.xx ).

$ ls

Wir müssen auf den Sicherungs-/Sekundärserver zugreifen (18.118.208.xx ) und erstellen Sie ein ähnliches Verzeichnis, das die Dateien vom Haupt-/Primärserver (3.135.207.xx) hostet ), wenn der rsync-Prozess beginnt.

$ mkdir LinuxShellTips_Backup
$ cd LinuxShellTips_Backup

Synchronisieren von Verzeichnissen mit Rsync unter Linux

Seit rsync unterstützt die Verwendung von ssh Protokoll ist die Serverzugriffssicherheit gewährleistet. Um manuell zu testen, wie rsync zwischen diesen beiden Servern durchführt, führen wir den folgenden Befehl aus.

Wir führen diesen Befehl vom Sicherungs-/Sekundärserver aus (18.118.208.xx ).

$ sudo rsync -avzhe ssh [email protected]:/home/ubuntu/LinuxShellTips/ /home/ubuntu/LinuxShellTips_Backup 

Wie Sie bemerkt haben, sind die drei Dateien vom Haupt-/Primärserver (3.135.207.xx ) wurden erfolgreich auf den Sicherungs-/Sekundärserver (18.118.208.xx) kopiert ).

Verzeichnisse automatisch mit Rsync in Linux synchronisieren

Wir müssen die folgenden zwei Schritte ausführen, um rsync vollständig zu automatisieren.

Schritt 1:Konfigurieren Sie die passwortlose SSH-Anmeldung

Beim Ausführen des obigen Befehls zum Testen von rsync , sollten Sie zur Eingabe des Zugangspassworts des Haupt-/Primärservers aufgefordert worden sein. Um die Eingabeaufforderungen zur Passwortabfrage während der Synchronisierung Ihrer Server loszuwerden, müssen wir einen öffentlichen und einen privaten Schlüssel generieren.

Verwenden Sie den folgenden Befehl auf Ihrem Sicherungs-/Sekundärserver:

$ sudo ssh-keygen -t rsa -b 2048

Drücken Sie [Eingabe ] Wenn Sie zur Eingabe einer Passphrase aufgefordert werden, lassen Sie das Feld leer und kopieren Sie die generierten privaten und öffentlichen Schlüssel auf Ihren Haupt-/Primärserver.

$ sudo ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]

Sie können nun bequem das zuvor behandelte rsync ausführen Befehl, ohne ein Serverzugriffspasswort für den Haupt-/Primärserver anzugeben.

$ sudo rsync -avzhe ssh [email protected]:/home/ubuntu/LinuxShellTips/ /home/ubuntu/LinuxShellTips_Backup 

Schritt 2:Konfigurieren Sie einen Cron-Job, um Rsync zu automatisieren

Seit SSH eine passwortlose Anmeldung zwischen diesen beiden Servern ist jetzt möglich, der letzte Schritt zur Automatisierung des rsync-Prozesses besteht darin, einen Cron-Job zu erstellen, indem die Crontab-Datei auf dem Backup-/Sekundärserver bearbeitet wird.

$ sudo crontab -e

Bearbeiten Sie die crontab-Datei, indem Sie einen Zeitplan für Cron-Jobs erstellen, um die Verzeichnisdateien Ihrer beiden Linux-Server zu synchronisieren.

*/5    *    *     *     *  sudo rsync -avzhe ssh [email protected]:/home/ubuntu/LinuxShellTips/ /home/ubuntu/LinuxShellTips_Backup

Speichern und schließen Sie die Crontab-Datei.

Der oben implementierte Cron-Job synchronisiert automatisch alle 5 Minuten den Backup-/Sekundärserver mit dem Haupt-/Primärserver.

Die Synchronisierung von zwei Servern schafft die perfekte Lösung für Probleme mit Serverausfällen und Serverprotokollfehlern. Sie müssen sich auch keine Sorgen über den Verlust Ihrer Benutzer- und Systemdatendateien machen, da der Sicherungsserver eine vollständige Kopie dieser Dateien hostet.


Linux
  1. So konfigurieren Sie den SAMBA-Server und übertragen Dateien zwischen Linux und Windows

  2. So übertragen Sie Dateien zwischen Servern in Linux mit SCP und FTP

  3. Wie synchronisiere ich Dateien zwischen zwei Fernbedienungen?

  4. Wie verwende ich den Rsync-Befehl unter Linux?

  5. So kopieren Sie eine große Anzahl von Dateien schnell zwischen zwei Servern

So laden Sie Dateien von Remote-Linux-Servern herunter

So vergleichen Sie zwei Dateien im Linux-Terminal

So synchronisieren Sie zwei Webserver unter Linux automatisch

So richten Sie einen Rsync-Daemon auf Ihrem Linux-Server ein

So verwenden Sie Rsync zum Kopieren/Synchronisieren von Dateien zwischen Servern

Unterschied in Leerzeichen zwischen zwei Dateien unter Linux