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
Inhaltsverzeichnis 2. Zweck 2.1 Objekten Eigensch...
Beginnen wir mit dem Körper: Wenn Sie eine Webseit...
Grund Die MySQL-Version, von der Nacos‘ POM abhän...
Es gibt drei Seiten A, B und C. Seite A enthält Se...
Beispiel für einen WeChat-Applet-Rechner. Zu Ihre...
Ursprüngliche Absicht Der Grund für die Entwicklu...
/******************** * Virtuelles Dateisystem VF...
Ich habe vor Kurzem mein SQL-Lernen beendet und M...
1. Caches - Abfrage-Cache Die folgende Abbildung ...
<br />Bei Diskussionen mit meinen Freunden h...
1. Die Beziehung zwischen Schriftarten und Zeiche...
Ab heute werde ich regelmäßig kleine Wissenspunkte...
Ergebnisse erzielen Implementierungscode html <...
Dieser Artikel stellt einige häufig verwendete Fu...
Keepalived-Installation: cd <keepalived_source...