


So einfach ist Backup: Erfahren Sie, wie Sie den Linux-Befehl rsync ganz einfach verwenden
Im täglichen Gebrauch moderner Computer ist die Datensicherung besonders wichtig. Für Linux-Benutzer ist der Befehl rsync eine gängige Methode zum Sichern und Synchronisieren von Dateien. Es ermöglicht eine schnelle und effiziente Datensynchronisierung zwischen verschiedenen Systemen oder lokalen Ordnern.
Projekthintergrund: Zwischen Server A und Server B ist eine Datensynchronisierung erforderlich (entweder 1-zu-1 oder viele-zu-viele, hier ist ein einfaches 1-zu-1-Beispiel). Diese Lösung wird häufig für die Remote-Notfallwiederherstellung verwendet.

Es gibt grob zwei Arten von Synchronisierungslösungen, die auf Anwendungsszenarien basieren: geplante Synchronisierung und Echtzeitsynchronisierung. Die geplante Synchronisierung weist die Merkmale einer festen Synchronisierungszeit, einer schlechten Echtzeitleistung und eines geringen Ressourcenverbrauchs auf. Die Echtzeitsynchronisierung weist die Merkmale einer starken Echtzeitleistung, einer intensiven Synchronisierung und eines hohen Ressourcenverbrauchs auf.
1. Geplante Synchronisierung
1. Software installieren:
yum install rsync -y
2. Passwortfreie Anmeldung (Sie können auch einfachen Text verwenden, um eine interaktive Anmeldung zu simulieren, aus Sicherheitsgründen wird jedoch die Verwendung einer passwortfreien Anmeldung empfohlen):
ssh-keygen -t rsa
Nach der Generierung können Sie das Verzeichnis cd ~/.ssh/ aufrufen und den Inhalt des generierten Schlüssels ~/.ssh/id_rsa.pub nach /root/.ssh/authorized_keys auf dem Remote-Host kopieren
Viele Studenten hier sind neugierig, warum für die oben genannten Vorgänge kein Passwort eingegeben werden muss. Studenten, die sich mit der passwortfreien Anmeldung auskennen, können diese Einführung überspringen. Hier eine Einführung in das Prinzip des passwortfreien Logins:
rsa wird auch als asymmetrischer Schlüsselalgorithmus bezeichnet, was dem symmetrischen Schlüsselalgorithmus entspricht.
Der sogenannte symmetrische Schlüsselalgorithmus ist die Kommunikation zwischen A und B. Damit beide Parteien die Identität des anderen bestätigen können, einigen sich A und B auf einen Schlüssel k, der beiden Parteien bekannt ist, um die Identität wie folgt zu bestimmen:
A => (mk) B A sendet m Klartext und den K-Schlüssel an B, und B bestätigt, dass der K-Schlüssel mit der vorherigen Vereinbarung von A übereinstimmt, und kann dann sicher sein, dass die Identität von A wahr ist. Umgekehrt gilt das Gleiche auch für die Kommunikation von B nach A.
Asymmetrische Verschlüsselung erfordert zwei Schlüssel: öffentlichen Schlüssel und privaten Schlüssel. Der öffentliche Schlüssel und der private Schlüssel sind ein Paar. Wenn der öffentliche Schlüssel zur Verschlüsselung von Daten verwendet wird, können diese nur mit dem entsprechenden privaten Schlüssel entschlüsselt werden. Wenn ein privater Schlüssel zur Verschlüsselung von Daten verwendet wird, können diese nur mit dem entsprechenden öffentlichen Schlüssel entschlüsselt werden. Da für die Ver- und Entschlüsselung unterschiedliche Schlüssel verwendet werden, spricht man von asymmetrischer Verschlüsselung.
Der obige Vorgang teilt also den öffentlichen Schlüssel von Server A mit Server B (Remote-Host), sodass Server A nicht mehr die herkömmliche interaktive Passworteingabe benötigt, um sich bei Server B anzumelden. Server B kann dies über den öffentlichen Schlüssel von Server A bestätigen . Die Authentizität von Server A (privater Schlüssel).
[root@localhost ~]# cd ~/.ssh/ [root@localhost .ssh]# ls id_rsa id_rsa.pub known_hosts
3. Schreiben Sie ein Shell-Skript
[root@localhost ~]# vim back.sh #!/bin/sh rsync -avz -e 'ssh -p 22' root@x.x.x.x:/XXX/pub /data/
Hinweis: Die Datensynchronisierung von rsync ist in zwei verschiedene Aktionen unterteilt: Pull und Push. Testen Sie vor dem Schreiben des Skripts unbedingt, ob der Befehl normal ausgeführt werden kann.
4. Geplante Ausführungskonfiguration von Crontab (Skript jeden Tag um 15 Uhr ausführen)
Zu diesem Zeitpunkt ist die geplante Synchronisierung konfiguriert.
2. Echtzeit-Synchronisation

Einführung in Inotify
Inotify ist eine seit Version 2.6.13 verfügbare Linux-Funktion, die Dateisystemvorgänge wie Lese-, Schreib- und Erstellungsvorgänge überwacht. Inotify ist sehr reaktionsschnell, sehr einfach zu verwenden und viel effizienter als das geschäftige Abfragen von Cron-Aufgaben.
Beginnen Sie mit der Konfiguration von Inotify
Hinweis: rsync muss vor dem Start auf beiden Servern A und B installiert werden.
1. Passen Sie die inotify-Kernel-Parameter auf Server B an, vim /etc/sysctl.conf
fs.inotify.max_queued_events = 16384 fs.inotify.max_user_instances = 1024 fs.inotify.max_user_watches = 1048576
2. Sorgen Sie dafür, dass die Anpassung der Inotify-Kernel-Parameter sofort wirksam wird
sysctl -p
3. Installieren Sie das Inotify-Tool
# 先安装扩展包源,否则inotify-tools找不到 yum install epel-release yum install inotify-tools
4. Öffnen Sie zwei Terminals, ein Terminal führt Vorgänge wie Erstellen und Löschen aus und das andere führt das Inotify-Tool-Tool aus. Es funktioniert normal, wenn Sie das Inotify-Tool-Tool testen
inotifywait -mrq -e modify,create,move,delete /var/www/ inotifywait:用于持续监控,实时输出结果 inotifywatch:用于短期监控,任务完成后再出结果
vim /root/tongbu.sh
#!/bin/bash INOTIFY_CMD="inotifywait -mrq -e modify,create,attrib,move,delete /root/cs" RSYNC_CMD="rsync -avz -e 'ssh - p 22' /root/cs/ root@x.x.x.x:/root/cs/ " $INOTIFY_CMD | while read DIRECTORY EVENT FILE do if [ $(pgrep rsync | wc -l) -le 0 ] ; then $RSYNC_CMD fi done
6. Fügen Sie den automatischen Hintergrund hinzu, der beim Start ausgeführt wird, bearbeiten Sie die Datei /etc/profile und fügen Sie die folgende Anweisung in die letzte Zeile ein
/bin/bash /root/tongbu.sh &
Kurz gesagt ist der Befehl rsync ein sehr leistungsstarkes, flexibles und effizientes Tool zur Dateisynchronisierung und -sicherung. Ob im täglichen Einsatz oder im Produktionsumfeld, es kann seine einzigartigen Vorteile ausspielen. Durch die Einführung und das Üben dieses Artikels glaube ich, dass jeder die grundlegende Verwendung und die Fähigkeiten dieses Befehls beherrscht. Ich hoffe, Sie können den Befehl rsync besser nutzen, um Ihre Daten bei Ihrer zukünftigen Linux-Nutzung zu verwalten und zu schützen!
Das obige ist der detaillierte Inhalt vonSo einfach ist Backup: Erfahren Sie, wie Sie den Linux-Befehl rsync ganz einfach verwenden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



Wie benutze ich Docker Desktop? Docker Desktop ist ein Werkzeug zum Ausführen von Docker -Containern auf lokalen Maschinen. Zu den zu verwendenden Schritten gehören: 1.. Docker Desktop installieren; 2. Start Docker Desktop; 3.. Erstellen Sie das Docker -Bild (mit Dockerfile); 4. Build Docker Image (mit Docker Build); 5. Docker -Container ausführen (mit Docker Run).

Die wichtigsten Unterschiede zwischen CentOS und Ubuntu sind: Ursprung (CentOS stammt von Red Hat, für Unternehmen; Ubuntu stammt aus Debian, für Einzelpersonen), Packungsmanagement (CentOS verwendet yum, konzentriert sich auf Stabilität; Ubuntu verwendet apt, für hohe Aktualisierungsfrequenz), Support Cycle (Centos) (CENTOS bieten 10 Jahre. Tutorials und Dokumente), Verwendungen (CentOS ist auf Server voreingenommen, Ubuntu ist für Server und Desktops geeignet). Weitere Unterschiede sind die Einfachheit der Installation (CentOS ist dünn)

Fehlerbehebung Schritte für fehlgeschlagene Docker -Bild Build: Überprüfen Sie die Dockerfile -Syntax und die Abhängigkeitsversion. Überprüfen Sie, ob der Build -Kontext den erforderlichen Quellcode und die erforderlichen Abhängigkeiten enthält. Sehen Sie sich das Build -Protokoll für Fehlerdetails an. Verwenden Sie die Option -Target -Option, um eine hierarchische Phase zu erstellen, um Fehlerpunkte zu identifizieren. Verwenden Sie die neueste Version von Docker Engine. Erstellen Sie das Bild mit--t [Bildname]: Debugg-Modus, um das Problem zu debuggen. Überprüfen Sie den Speicherplatz und stellen Sie sicher, dass dies ausreicht. Deaktivieren Sie Selinux, um eine Störung des Build -Prozesses zu verhindern. Fragen Sie Community -Plattformen um Hilfe, stellen Sie Dockerfiles an und erstellen Sie Protokollbeschreibungen für genauere Vorschläge.

Docker Process Viewing -Methode: 1. Docker Cli -Befehl: Docker PS; 2. SYSTEMD CLI -Befehl: SystemCTL Status Docker; 3.. Docker Compose CLI Command: Docker-Compose PS; 4. Process Explorer (Windows); 5. /proc -Verzeichnis (Linux).

CentOS -Installationsschritte: Laden Sie das ISO -Bild herunter und verbrennen Sie bootfähige Medien. Starten und wählen Sie die Installationsquelle; Wählen Sie das Layout der Sprache und Tastatur aus. Konfigurieren Sie das Netzwerk; Partition die Festplatte; Setzen Sie die Systemuhr; Erstellen Sie den Root -Benutzer; Wählen Sie das Softwarepaket aus; Starten Sie die Installation; Starten Sie nach Abschluss der Installation von der Festplatte neu und starten Sie von der Festplatte.

Docker verwendet Linux -Kernel -Funktionen, um eine effiziente und isolierte Anwendungsumgebung zu bieten. Sein Arbeitsprinzip lautet wie folgt: 1. Der Spiegel wird als schreibgeschützte Vorlage verwendet, die alles enthält, was Sie für die Ausführung der Anwendung benötigen. 2. Das Union File System (UnionFS) stapelt mehrere Dateisysteme, speichert nur die Unterschiede, speichert Platz und beschleunigt. 3. Der Daemon verwaltet die Spiegel und Container, und der Kunde verwendet sie für die Interaktion. 4. Namespaces und CGroups implementieren Container -Isolation und Ressourcenbeschränkungen; 5. Mehrere Netzwerkmodi unterstützen die Containerverbindung. Nur wenn Sie diese Kernkonzepte verstehen, können Sie Docker besser nutzen.

VS Code system requirements: Operating system: Windows 10 and above, macOS 10.12 and above, Linux distribution processor: minimum 1.6 GHz, recommended 2.0 GHz and above memory: minimum 512 MB, recommended 4 GB and above storage space: minimum 250 MB, recommended 1 GB and above other requirements: stable network connection, Xorg/Wayland (Linux)

Die Gründe für die Installation von VS -Code -Erweiterungen können sein: Netzwerkinstabilität, unzureichende Berechtigungen, Systemkompatibilitätsprobleme, VS -Code -Version ist zu alt, Antiviren -Software oder Firewall -Interferenz. Durch Überprüfen von Netzwerkverbindungen, Berechtigungen, Protokolldateien, Aktualisierungen von VS -Code, Deaktivieren von Sicherheitssoftware und Neustart von Code oder Computern können Sie Probleme schrittweise beheben und beheben.
