Skip to main content

Debian 8 Jessie – Vollbackup und inkrementelle Backups mittels tar erstellen

Unter Linux ist es sehr leicht möglich Backups zu erstellen ohne zusätzliche Programme zu installieren. Der Vorteil von tar gegenüber anderen Backup Programmen ist, dass tar Archive mit vielen Programmen wie zum Beispiel 7zip oder WinRAR geöffnet werden können und so das Wiederherstellen von Dateien sehr einfach ist.

Zuerst wollte ich meine Daten in die Amazon S3 Cloud speichern. Dies ist sehr einfach möglich und die Kosten sind auch sehr gering. Dann fiel mir jedoch auf, dass wenn ich aktiv meine Dateien von meinem Server auf einen anderen Server / Anbieter speichere, ich immer die Zugangsdaten dort hinterlegen muss. Das heißt, dass ein Angreifer, der die Kontrolle über meinen Server hat, auch die Kontrolle über alle anderen Server / Anbieter hat, auf denen ich meine Backups speichern würde. Daher habe ich mich dazu entschieden Backups zu erstellen und diese per SFTP freizugeben. So kann ein anderer Server sich die Backups einfach downloaden und die Zugangsdaten zum Server müssen nicht auf dem zu sichernden Server hinterlegt sein. Eine Anleitung zum Erstellen eines SFTP Servers gibts hier.

Hier mein Backup Script

Einstellungen:

  • Backupname = Name, wie die Backupdatei später heißen soll
  • Backupalter = Gibt an, wie lange die Backupdateien erhalten bleiben sollen (in Tagen)
  • Backupdir = Ort, wo die Backups gespeichert werden
  • Source = Ein Verzeichnis oder mehrere, die gesichert werden sollen
  • Emailempfänger = Wer die Email erhalten soll (funktioniert nur mit installiertem Email Server). Wenn kein Email Server installiert ist, „root“ eingeben.

Mein Backup Script ermöglicht es, dass

  • jeden Montag Vollbackups erstellt werden
  • an den anderen Tagen jeweils inkrementelle Backups erstellt werden. In diesen Backups werden nur die Änderungen gegenüber dem letzten Vollbackup gespeichert. Daher sind diese deutlich kleiner.
  • bei jedem Start alle Backups überprüft und die Backups, die älter als 14 Tage sind gelöscht werden. Die 14 Tage können aber beliebig verändert werden.

!!!ACHTUNG !!!

Es werden ALLE Dateien gelöscht, die im „BACKUPDIR“ und älter als 14 Tage sind. Also für das „BACKUPDIR“ bitte einen neuen Ordner angeben.

Script starten

Um das Script zu starten, muss eine Datei erzeugt und danach noch die Berechtigungen der Datei angepasst werden.

Crontab anlegen

Nachdem ihr den obigen Befehl erfolgreich ausprobiert habt, legen wir jetzt einen Cronjob an, damit dieser automatisch ausgeführt wird.

Das geht mit

Wenn ihr noch keinen Crontab angelegt habt, dann sollte folgende Meldung erscheinen. Hier drückt ihr einfach „1“.

cert_3

Nun solltet ihr folgendes sehen.

cert_4

Mein Backup Script liegt unter „/home/user/backup.sh“.

Fügt am Ende der Datei folgende Zeile ein:

Erklärung

Das Skript wird also jeden Tag nachts um 4 Uhr gestartet.

2 Gedanken zu „Debian 8 Jessie – Vollbackup und inkrementelle Backups mittels tar erstellen

    1. Das Skript kann an jedem beliebigen Ort gespeichert / erstellt werden.

      Später im Schritt „Crontab anlegen“ muss nur auf diesen Pfad verwiesen werden.
      In diesem Beispiel wurde das Skript an folgendem Ort erstellt: „/home/Nutzername/backup.sh“

Schreibe einen Kommentar

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