0x0 Testumgebung Der Produktionsserver der Zentrale und der Backup-Server der Niederlassung erfordern eine Remote-Datensicherung. Die Umgebung ist wie folgt
0x1 Aufbau einer Produktionsserverumgebung 0x1.1 Installieren Sie den gcc-Compiler und rsync
0x1.2 Kopiere inotify auf den Server und dekomprimiere es
0x1.3 Geben Sie das zu installierende inotify-Verzeichnis ein cd inotify-tools-3.13 ./konfigurieren machen installieren /usr/local/bin/inotifywait ##Überprüfen Sie, ob die Installation erfolgreich ist 0x2 Aufbau der Backup-Serverumgebung 0x2.1 Installieren Sie xinetd und rsync
0x3 Folgende Inhalte werden zwischen den beiden Servern synchronisiert Benutzeradd -u 600 zytest Passwort zytest Zytest su - zytest -c 'mkdir /home/zytest/files' ##Synchronisierungsverzeichnis erstellen 0x4 Konfigurieren Sie rsyncd auf dem Backup-Server 0x4.1 Bearbeiten Sie /etc/xinetd.d/rsync und ändern Sie es entsprechend dem folgenden Inhalt deaktivieren = ja ==> deaktivieren = nein Flags = IPv6 ==> Flags = IPv4 server_args = --daemon ==> server_args = --daemon --config=/etc/rsyncd.conf 0x4.2 Bearbeiten Sie /etc/rsyncd.conf und fügen Sie die folgenden Skriptinformationen hinzu uid = root gid = root chroot verwenden = nein Max. Verbindungen = 1000 strenger Modus = ja Port = 873 pid-Datei = /var/run/rsyncd.pid Sperrdatei = /var/run/rsyncd.lock Protokolldatei = /var/log/rsyncd.log # folgt für Benutzer „zytest“, ändert sich für andere Benutzer [Zytest] Pfad = /home/zytest Fehler ignorieren Authentifizierungsbenutzer =zytest Geheimnisse-Datei = /home/rsync-dst.ps nur lesen = nein Liste = falsch Ps: Die rsyncd-Konfigurationsdatei befindet sich auf xinetd, daher installiert der Backup-Server xinetd 0x4.3 Passwort in die aufgerufene Passwortdatei schreiben und Berechtigungen erteilen echo zytest:zytest >> /home/rsync-dst.ps chmod 600 /home/rsync-dst.ps 0x4.4 Starten Sie rsync über xinetd /etc/rc.d/init.d/xinetd neu starten 0x5 Konfigurieren Sie die Inosync-Skriptdatei auf dem primären Server 0x5.1 ** ##Bearbeiten Sie /root/inosync und fügen Sie Skriptcode hinzu ** #!/bin/sh #chkconfig: 3 78 10 #Diese Datei existiert ab der Kompilierung wenn [ ! -f /usr/local/bin/inotifywait ] Dann echo "Kann nicht gestartet werden. Datei inotifywait existiert NICHT!" Ausfahrt fi #Diese Datei ist ein ausführbares Shell-Skript wenn [ ! -f /usr/local/bin/inosync.so.1 ] Dann echo "Administrator kontaktieren. inosync.so.1 existiert NICHT!" Ausfahrt fi Fall "$1" in 'Start') /usr/local/bin/inosync.so.1 & ;; 'stoppen') pid=`ps -ef | grep -v grep | grep "inotifywait" | awk '{print $2}'` töten -9 $pid 2>&1 ;; 'Neustart') $0 Stopp $0 Start ;; esac 0x5.2 Skriptberechtigungen erteilen und so einrichten, dass es beim Booten gestartet wird chmod a+x /root/inosync cp /root/inosync /etc/rc.d/init.d 0x5.3 Konfigurationsaufruf Hauptskriptdatei /root/inosync.so.1 rhost=**IP des Backup-Servers** Benutzer=zytest src=/home/zytest/dateien dst=Zytest #dst entspricht [zytest] in der Datei /etc/rsyncd.conf auf dem Dst-Server log=/root/inosync.log /usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M:%S' --format '%T %w%f %e' -e close_write,create,move,delete,attrib $src | beim Lesen von Dateien Tun echo == rsync begin == >> $log rsync -avP --password-file=/home/rsync-src.ps --delete $src $user@$rhost::$dst >> $log 2>&1 echo -- rsyncd -- >> $log Datum >> $log echo "${files} wurde per Rsync synchronisiert " >> $log 2>&1 Erledigt PS: Nach %T steht ein Leerzeichen und zwischen %f und %e steht ebenfalls ein Leerzeichen. 0x5.4 Erteilen Sie dem Skript inosync.so.1 Berechtigungen und kopieren Sie es nach /usr/local/bin chmod a+x /root/inosync.so.1 cp /root/inosync.so.1 /usr/local/bin 0x5.5 Passwort in die aufgerufene Passwortdatei schreiben und Berechtigungen erteilen echo zytest >> /home/rsync-src.ps chmod 600 /home/rsync-src.ps 0x6 Der Zielserver stellt den automatischen Start von Inosync ein und schaltet den Inosync-Dienst ein. chkconfig --level 3 inosync ein /etc/rc.d/init.d/inosync starten 0x7 Test ENDE Erstellen Sie Dateien und Ordner im Verzeichnis /home/zytest/files auf dem Produktionsserver und prüfen Sie, ob der Backup-Speicher die Dateien und Ordner ebenfalls synchronisiert hat. Wenn ja, ist die Synchronisierung erfolgreich. Der Vorgang kann über das Protokoll eingesehen werden tail -f /root/inosync.log Zusammenfassen Dies ist das Ende dieses Artikels über die Verwendung von Rsync+Inotify in Linux zur Echtzeitsynchronisierung lokaler und Remote-Daten. Weitere Informationen zur Verwendung von rsync+inotify zur Echtzeitsynchronisierung von Remote-Daten finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Tutorial zur Installation von MYSQL8.0 auf Alibaba Cloud ESC
>>: Vue implementiert einen einfachen Lupeneffekt
1. Einzelne Tabellenabfrage -> Update UPDATE T...
Ich habe einmal versprochen, dass ich so lange wei...
Inhaltsverzeichnis Vorwort 1. Laden Sie eine einz...
Inhaltsverzeichnis Vorwort Installieren des Grafi...
Die Pseudoklasse „Before/After“ entspricht dem Ei...
Bash-Initialisierungsdateien Interaktive Login-Sh...
Heute werde ich diese Anfängerfragen beantworten: ...
Offizielle Version von MySQL v5.7.19 (32/64-Bit-I...
Inhaltsverzeichnis Zeig mir den Code Testen Sie d...
Inhaltsverzeichnis Hauptthema 1. Installieren Sie...
In diesem Artikel erfahren Sie die Lösung für das...
Inhaltsverzeichnis 1. Schritte zum Download 2. Um...
Lernen Sie jeden Tag ein schwebendes jQuery-Plug-...
Inhaltsverzeichnis So zeigen Sie den Quellcode de...
Es gibt einige Probleme, die nicht auf Vue beschr...