Startseite>Daten und Partitionen effektiv sichern
Aus Raspberry Pi Geek 04/2019

Daten und Partitionen effektiv sichern (Seite 2)

Sie speichern das Skript aus Listing 2 in eine beliebige Datei, etwa do_backup, die Sie danach mit dem Befehl chmod u+x do_backup ausführbar machen. Die Option u+x verleiht dem Benutzer der Datei Ausführungsrechte [5]. Die entsprechende Einstellung überprüfen Sie gegebenenfalls mit dem Befehl ls -l: Taucht in der Ausgabe links bei der Benutzerkategorie ein x für “execute” auf, hat die Einstellung funktioniert. Anschließend können Sie das Skript mit dem Kommando ./do_backup direkt aufrufen, um die Datensicherung zu testen.

Um später das komplette Backup wieder zu entpacken, verwenden Sie das Kommando tar -xvf Tarball. Alternativ entpacken Sie aber auch einzelne Dateien oder Verzeichnisse oder nur Dateien eines bestimmten Namens oder Dateityps. Beispiele für die entsprechenden Aufrufe finden Sie in der Tabelle “Tarball entpacken”.

Aufruf

Funktion

tar -xvf Tarball

kompletten Tarball entpacken

tar -xvf Tarball /Pfad/Datei

einzelne Datei aus dem Tarball entpacken

-xvf Tarball --wildcards Muster

extrahiert alle Dateien aus dem Tarball, die zum Muster passen

Backup 3.0

Soll das Backup etwas komfortabler ausfallen, greifen Sie zu Backup-Manager [6], den Sie unter Raspbian bequem per Paketverwaltung installieren (Listing 3). Dabei handelt es sich um ein vollständiges Backup-Programm für die Kommandozeile, das sich sehr einfach konfigurieren lässt. Es ermöglicht ein inkrementelles Backup und stellt mehrere Kompressionsformate zur Auswahl. Zudem kann es MySQL-Dumps sowie SVN-Repositories sichern.

Listing 3

$ sudo apt-get install backup-manager

Die Konfigurationsdaten des Tools finden Sie in der Datei /etc/backup-manager.conf, die schon in der Voreinstellung einen sinnvollen Einsatz ermöglicht. Sie können also nach der Installation durch Aufruf des Befehls backup-manager direkt eine erste Sicherungskopie erstellen. Standardmäßig legt Backup-Manager die Archive im Verzeichnis /var/archives/ ab (Abbildung 1).

Abbildung 1: Unter Htop lässt sich erkennen, dass Backup-Manager gerade mithilfe des Befehls Tar eine Sicherungskopie erstellt.

Abbildung 1: Unter Htop lässt sich erkennen, dass Backup-Manager gerade mithilfe des Befehls Tar eine Sicherungskopie erstellt.

Sie sollten allerdings die Konfigurationsdatei mit Administratorrechten anpassen, damit Backup-Manager alle gewünschten Dateien und Ordner sichert. Als Hilfestellung zur Konfiguration fasst die Tabelle “Backup-Manager einrichten” die wichtigsten Optionen zusammen.

Option

Beispiel

Funktion

BM_REPOSITORY_ROOT

/home/pi/archives

legt den Archivordner fest

BM_ARCHIVE_METHOD

tarball-incremental mysql svn

Archivmethode

BM_ARCHIVE_TTL

3

Zahl der Archive, die Backup-Manager lokal speichert

BM_TARBALL_DIRECTORIES

/etc /home

zu sichernde Ordner, durch Leerzeichen voneinander getrennt

BM_TARBALL_BLACKLIST

/var/archives /home/notbackup

auszulassende Ordner, durch Leerzeichen voneinander getrennt

BM_UPLOAD_METHOD

“ftp”

Methode für das Übertragen der Backups

BM_UPLOAD_FTP_USER

sd-000

FTP-User

BM_UPLOAD_FTP_PASSWORD

mYp4SsW0rd

Passwort des FTP-Users

BM_UPLOAD_FTP_HOSTS

dedibackup.dedibox.fr

FTP-Server

BM_UPLOAD_FTP_PASSIVE

true

passiven Transfer-Modus für FTP aktivieren

BM_UPLOAD_FTP_PURGE

true

Zielverzeichnisinhalt vor dem Übertragen löschen

BM_UPLOAD_FTP_DESTINATION

/

Zielordner auf dem FTP-Server

BM_MYSQL_DATABASES

mysql

Name der MySQL-Datenbank

BM_MYSQL_ADMINLOGIN

root

User der MySQL-Datenbank

BM_MYSQL_ADMINPASS

GEh31m

MySQL-Passwort des Users

BM_MYSQL_HOST

localhost

MySQL-Servername

BM_MYSQL_PORT

3306

Port, auf dem der MySQL-Server lauscht

BM_MYSQL_FILETYPE

gzip

Kompressionsformat für die MySQL-Datenbank (gzip oder bzip2)

BM_SVN_REPOSITORIES

absoluter Pfad zum SVN-Repository

BM_SVN_COMPRESSWITH

gzip

Kompressionsformat für das SVN-Repository (gzip oder bzip2)

BM_PRE_BACKUP_COMMAND

angegebenes Skript ausführen, bevor das Backup startet

BM_POST_BACKUP_COMMAND

angegebenes Skript nach der letzten Aktion von Backup-Manager ausführen

Automatisierung mit Hcron

Erst das Verwenden eines sogenannten Schedulers ermöglicht regelmäßige, automatische Backups. Dazu eignen sich vor allem Shell-Skripte, wie wir sie in den obigen Beispielen gezeigt haben, die der Scheduler zu einem bestimmten Zeitpunkt ausführt.

Als Scheduler kommt Hcron [7] zum Einsatz. Er setzt bei der Konfiguration auf Schlüssel-Wert-Paare, sodass Sie anders als beim altbekannten Linux-Standardtool Cron [8] nicht wissen müssen, an welcher Stelle der Aufrufsyntax Sie die Minuten, Stunden, Tage und so weiter eintragen müssen. Die einzelnen Aufgaben – bei Cron heißen sie sinnigerweise Cron-Jobs – bezeichnet man bei Hcron als Events. Sie lassen sich in gesonderten Dateien abspeichern, was wesentlich übersichtlicher ausfällt als bei Cron, der alle Jobs in einer einzigen Datei auflistet.

Zwar findet sich Hcron nicht in den Raspbian-Paketquellen, der Scheduler lässt sich aber dennoch leicht installieren. Zunächst laden Sie das Programm als DEB-Paket herunter [9] und installieren es mit dem Kommando aus der ersten Zeile von Listing 4. Anschließend prüfen Sie via Systemctl, ob Hcron bereits läuft (zweite Zeile).

Listing 4

$ sudo dpkg -i hcron_Version_all.deb
$ systemctl status hcron

Dieser Befehl sollte eine Ausgabe mit einem grünen Punkt auslösen. Läuft der Prozess wider Erwarten noch nicht, wiederholen Sie den Systemctl-Befehl, ersetzen dabei aber status durch die Option start oder restart.

Die Konfigurationsdateien des Schedulers finden Sie im Ordner /etc/hcron/. Dort liegt unter anderem die Datei hcron.allow. Hier tragen Sie in jeweils einer neuen Zeile den Benutzernamen aller User ein, die die Befehle aus der Event-Datei ausführen dürfen. Unter Raspbian kommt dafür in der Regel der bereits existierende Benutzer pi infrage.

In den Dateien hcron.conf sowie hcron-run.conf tragen Sie den Pfad sowie den Namen einer Protokolldatei ein (Listing 5). Über dieses Log können Sie später unter anderem prüfen, ob die Events wie gewünscht starten (Abbildung 2).

Listing 5

# "log_path:" "/Pfad/zum/Protokoll.log"
DIESEN ARTIKEL ALS PDF KAUFEN
EXPRESS-KAUF ALS PDFUmfang: 6 HeftseitenPreis €0,99
(inkl. 19% MwSt.)
€0,99 – Kaufen
RASPBERRY PI GEEK KAUFEN
EINZELNE AUSGABE Print-Ausgaben Digitale Ausgaben
ABONNEMENTS Print-Abos Digitales Abo
TABLET & SMARTPHONE APPS
Deutschland