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
Ich habe kürzlich ein WeChat-Applet geschrieben u...
Der HTML-Code zum Abfangen von mehrzeiligem Text l...
Glasfenster Was wir heute erreichen werden, ist d...
Vorwort In letzter Zeit habe ich Kunden dabei geh...
Die Verwendung der internen Funktion instr in MyS...
Warum Vim lernen? Linux verfügt über eine große A...
Erklären Sie den gesamten Prozess von CLion von G...
Hallo zusammen, als ich mir heute das HTML des We...
Inhaltsverzeichnis 01 Einführung in GTID 02 Wie G...
1. Die Komponente First.js hat Unterkomponenten: ...
Einführung in MySQL-Fensterfunktionen MySQL unter...
Einführung: Ich glaube, dass jeder einige Dokumen...
In diesem Artikel wird der spezifische Code für V...
Vorwort Wie wir alle wissen, ist „Wie zentriert m...
1. Überprüfen Sie den Zeichensatz von MySQL Varia...