Heim System-Tutorial LINUX So einfach ist Backup: Erfahren Sie, wie Sie den Linux-Befehl rsync ganz einfach verwenden

So einfach ist Backup: Erfahren Sie, wie Sie den Linux-Befehl rsync ganz einfach verwenden

Feb 13, 2024 am 09:33 AM
linux linux教程 linux系统 linux命令 shell脚本 eingebettetes Linux Erste Schritte mit Linux Linux-Lernen

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.

备份就是那么简单:教你轻松使用 Linux rsync 命令

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
Nach dem Login kopieren

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 dem Login kopieren

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
Nach dem Login kopieren

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/
Nach dem Login kopieren

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

备份就是那么简单:教你轻松使用 Linux rsync 命令

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
Nach dem Login kopieren

2. Sorgen Sie dafür, dass die Anpassung der Inotify-Kernel-Parameter sofort wirksam wird

sysctl -p
Nach dem Login kopieren

3. Installieren Sie das Inotify-Tool

# 先安装扩展包源,否则inotify-tools找不到
yum install epel-release
yum install inotify-tools 
Nach dem Login kopieren

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:用于短期监控,任务完成后再出结果
Nach dem Login kopieren

5. Skripte schreiben

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
Nach dem Login kopieren

Hinweis: Achten Sie hier besonders darauf, die logische Beziehung nicht zu verwechseln, es handelt sich um Server B und Server A.

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 &
Nach dem Login kopieren
Damit ist die Erläuterung der geplanten Synchronisierung und der Echtzeitsynchronisierung abgeschlossen. Die Anwendung unterschiedlicher Lösungen entsprechend unterschiedlicher Szenarien erfordert eine flexible Reaktion, und darauf sollte besonderes Augenmerk gelegt werden. Bei Echtzeit-Synchronisationslösungen darf das Überwachungsverzeichnis nicht als Protokollverzeichnis festgelegt werden, da sonst die Server-CPU in die Höhe schießen und abstürzen kann.

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!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So verwenden Sie Docker Desktop So verwenden Sie Docker Desktop Apr 15, 2025 am 11:45 AM

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).

Unterschied zwischen CentOS und Ubuntu Unterschied zwischen CentOS und Ubuntu Apr 14, 2025 pm 09:09 PM

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)

Was tun, wenn das Docker -Bild fehlschlägt? Was tun, wenn das Docker -Bild fehlschlägt? Apr 15, 2025 am 11:21 AM

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.

So sehen Sie den Docker -Prozess So sehen Sie den Docker -Prozess Apr 15, 2025 am 11:48 AM

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).

So installieren Sie CentOs So installieren Sie CentOs Apr 14, 2025 pm 09:03 PM

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.

Detaillierte Erklärung des Docker -Prinzips Detaillierte Erklärung des Docker -Prinzips Apr 14, 2025 pm 11:57 PM

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.

Welche Computerkonfiguration ist für VSCODE erforderlich? Welche Computerkonfiguration ist für VSCODE erforderlich? Apr 15, 2025 pm 09:48 PM

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)

VSCODE kann die Erweiterung nicht installieren VSCODE kann die Erweiterung nicht installieren Apr 15, 2025 pm 07:18 PM

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.

See all articles