Blog

Linux Backupskript mit rsync

Wir zeigen ihnen ein Backupskript für Linux (u.a. Debian, Ubuntu, Raspbian, Banana) mit rsync und E-Mail Benachrichtigung. Es können Dateien von einer Festplatte auf eine andere angeschlossene HDD automatisiert gesichert werden.

rsync ist ein Programm, um Dateien zwischen lokalen oder über das Netzwerk erreichbaren Pfaden abzugleichen. Dabei werden zunächst die Größe und die Änderungszeit der Dateien in Quelle und Ziel verglichen (“Quick Check”-Algorithmus), so dass nur die Dateien behandelt werden müssen, bei denen es Änderungen gegeben hat. Sind Quelle und Ziel lokale Pfade, werden die betroffenen Dateien normal kopiert. Wenn auf Quelle oder Ziel aber per SSH oder über einen speziellen rsync-daemon zugegriffen wird, nutzt rsync zusätzlich noch einen speziellen Delta-Transfer-Algorithmus, so dass nur die geänderten Teile der Dateien über das Netzwerk transportiert werden müssen.

Quelle: wiki.buntuusers

Vorraussetzung:

Das folgende Backupskript ist konfigurierbar.

Konfigurieren Sie “QUELLE”, “ZIEL” und “sendemail” und ggf. “RSYNCCONF”

#!/bin/bash
#Backupskript mit rsync
# https://www.Benefit-Blog.de info@benefit-blog.de

# Angabe der Ordner die gesichert werden soll. Verschiedene Ordner sind durch Leerzeichen zu trennen.
# Bsp.: QUELLE="/media/hdd1 /root /bin"
QUELLE="/media/hdd1/ /media/hdd2"

#Email für Benachrichtigung (sendmail wird benötigt)
sendemail="test@test.de"

# Ziel des Backups
ZIEL="/media/hdd3/Backup/"

# Einstellungen
# --delete vergleicht Quellverzeichnis mit Zielverzeichnis, löscht die Dateien im Zielverzeichnis, wenn diese im Quellverzeichnis nicht mehr vorhanden sind.
#RSYNCCONF="--delete"
RSYNCCONF=""

# Dateiname des Logfile
LOGFILE="rsync_log.log"

# Ort der Binär-Datei von "rsync"
RSYNC=`which rsync`

# Befehl
$RSYNC -avrpuE $RSYNCCONF $QUELLE $ZIEL > $LOGFILE 

# send status report mail
echo "Voll-Backup report." | mail -a $LOGFILE -s "Server - Backupstatus" $sendemail < $LOGFILE
Cronjob

Um eine Automatisierung zu erreichen, muss das Skript regelmäßig ausgeführt werden mithilfe des Cronjob. Die unten gezeigte Gliederung stellt die Zeitangaben dar:

* * * * * auszuführender Befehl
┬ ┬ ┬ ┬ ┬
│ │ │ │ │
│ │ │ │ └──── Wochentag (0-7) (Sonntag =0 oder =7)
│ │ │ └────── Monat (1-12)
│ │ └──────── Tag (1-31)
│ └────────── Stunde (0-23)
└──────────── Minute (0-59)
0 3 * * * /home/USER/Dokumente/backupskript.sh

 

Anschließend muss das Backupskript ausführbar gemacht werden. (Rechte vergeben)

sudo chmod +x /home/USER/Dokumente/backupskript.sh

Werbung


, , , , , ,
Vorheriger Beitrag
rsync installieren linux
Nächster Beitrag
OpenVPN Server installieren auf Raspberry Pi (Linux)

Ähnliche Beiträge

1 Kommentar. Hinterlasse eine Antwort

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Bitte füllen Sie dieses Feld aus
Bitte füllen Sie dieses Feld aus
Bitte gib eine gültige E-Mail-Adresse ein.

Menü