Backup des Raspberry Pi 3 erstellen über das Netzwerk

Wenn man seinen Raspberry Pi durchkonfiguriert hat, möchte man ja auch mal ein Backup erstellen. Eine Möglichkeit ist es die SD-Karte zu nehmen und davon am PC ein Image zu schreiben. Es ist aber auch möglich, ein Image auf ein Netzlaufwerk abzulegen. Weiters dazu gibt es dort.

Sehr gut eignet sich dazu natürlich ein NAS-System. Ich selber besitze eine DS412+ von Synology und schreibe nun bei Bedarf meine Backups auf das NAS.

Konfiguration der Synology

Auf der Synology muss der NFS Dienst aktiviert werden:

Synology NFS

Zusätzlich muss für einen Gemeinsamen Ordner die NFS Berechtigung gesetzt werden.

Synlogy Berechtigung

Installation der Backup-Software

Nun kann die Backupsoftware, weitere Dienste und der Backupordner installiert, bzw. erstellt werden. Wir erzeugen einen Ordner /backup in dem später das NFS-Verzeichnis der Synology gemountet wird. (Anmerkung: Den Dienst nfslock gibt es anscheinend nicht mehr, es funktioniert aber trotzdem)

 curl -s -L -O https://www.linux-tips-and-tricks.de/raspiBackupInstall.sh && sudo bash raspiBackupInstall.sh  
 sudo mkdir /backup  
 sudo apt-get install nfs-common -y  
 sudo systemctl start rpcbind  
 sudo systemctl enable rpcbind  
 sudo systemctl start nfslock  
 sudo systemctl enable nfslock  

Das Konfigurationsfile liegt unter /usr/local/etc/raspiBackup.conf. Hier sollte der DEFAULT_BACKUPPATH überprüft werden und DEFAULT_STOPSERVICES und DEFAULT_STARTSERVICES angepasst werden. Meine Datei dient nur als Beispiel, ihr solltet schon selber wissen welche Dienste ihr am laufen habt.

 # path to store the backupfile  
 DEFAULT_BACKUPPATH="/backup"  
 # how many backups to keep  
 DEFAULT_KEEPBACKUPS="5"  
 # type of backup: dd, tar or rsync  
 DEFAULT_BACKUPTYPE="dd"  
 # zip tar or dd backup (0 = false, 1 = true)  
 DEFAULT_ZIP_BACKUP="0"  
 # commands to stop services before backup separated by &  
 DEFAULT_STOPSERVICES="systemctl stop grafana-server && systemctl stop telegraf && systemctl stop influxdb && systemctl stop unifi && systemctl stop homebridge"  
 # commands to start services after backup separated by &  
 DEFAULT_STARTSERVICES="systemctl start unifi && systemctl start influxdb && systemctl start telegraf && systemctl start grafana-server && systemctl start homebridge"  

So sieht es bei mir aus. Die Services solltet ihr natürlich an eure Gegebenheiten anpassen.

Ein erstes Backup erstellen

 sudo mount 10.10.66.100:/volume1/daten/backup/pi /backup/  
 sudo raspiBackup.sh -m detailed  
 sudo umount /backup  

Damit mountet ihr euer Verzeichnis, startet ein Backup und unmountet das Verzeichnis wieder. Bei mir dauert es für die 32GB knapp eine Stunde.
Solltet ihr das Unmounten vergessen und eure NAS herunterfahren, wird euer Pi es euch mit einer erhöhten Last danken 😉

Natürlich könnt ihr auch das Backup automatisieren und einen Cronjob erstellen. Meine NAS läuft aber nicht immer, also mache ich es nach Bedarf.

 sudo crontab -e  
 #am Ende einfügen  
 00 23 * * 1 /usr/local/bin/raspiBackup.sh  
Damit würde jeden Montag um 23:00 ein Backup erstellt.

4 Gedanken zu “Backup des Raspberry Pi 3 erstellen über das Netzwerk

  1. Hallo und danke für die Anleitung

    Leider bekomme ich bei:
    sudo systemctl start nfslock
    sudo systemctl enable nfslock

    folgendes Feedback:
    Failed to start nfslock.service: Unit nfslock.service failed to load: No such file or directory.

    Hast du eine Idee woran es liegen könnte bzw. wie ich das Problem behebe?
    Rasbian is up to date auf einem 3er PI.

    Danke

    • Hi,

      anscheinend hat sich etwas geändert, denn auch ich habe diesen Dienst nicht mehr, das Backup funktioniert aber trotzdem.

      Grüße,
      Björn

      • Das kann ich bestätigen. Auch bei mir lief es durch. Weißt du was dieser Dienst vorher gemacht hat?

        Ich werde das Backup heute versuchen zu installieren und danach einen Job einrichten um es automatisch durchführen zu lassen.

        Was mich noch interessieren würde:
        Könntest du für deine Leser kurz die Services beschreiben, die du beim Start des Backups beendest? Ich habe nur Homebridge drin gelassen. Die anderen sagen mir nichts. Was sollte man hier beenden wenn man ein anderes Setup hätte?

        Was ist der Vorteil das Mappen den Laufwerks über NFS zu machen und nicht über einen User mit SFTP oder anderen Freigaben?

        Außerdem wäre es richtig cool, wenn du noch auf die unterschiedlichen Settings von Backups eingehen könntest (dd, rsync, tar oder zippen).

        Aber auch ohne diese Erweiterungen ein richtig gute Anleitung. Merci

        • Hi,

          der Dienst ist eigentlich dafür zuständig das ein NFS Client den Zugriff auf eine Datei sperren kann, welche er gerade bearbeitet. Wenn ich es richtig verstanden habe ist es aber ein Dinst der auf dem Server laufen muss, also nicht auf dem Raspberry. Eventuell war der Dienst vorher schon nicht nötig.

          Deine Services muss du selber im Blick haben, meine sollen nur ein Beispiel darstellen. Es handelt sich dabei um Grafana, Telegrtaf, InfluxDB un eine Unifi Controller, damit sammel ich Daten meiner Netzwerkkomponenten. Es sind also keine Standarddienste. Je nachdem was dein Raspi macht, solltest du die entsprechenden Dienste dort eintragen, aber das kannst halt nur du wissen.

          Gute Frage, ich habe NFS als erste versucht und es hat funktioniert. Ich bin dabei geblieben.

          dd hat den Vorteil das ich es mit einem Windows Rechner wiederherstellen kann. Ansonsten würde ich auf der Seite des Tools schauen.

Schreibe einen Kommentar

%d Bloggern gefällt das: