Raspberry Pi SD-Karte auf NAS sichern = Pi-Backup
SD Karten haben leider nur eine begrenzte Lebensdauer. Diese hängt maßgeblich von der Anzahl der Lese- und vor allem der Schreibzugriffe ab. Linux schreibt jedoch die ganze Zeit Einträge in diverse Log-Files. Desto mehr Programme, desto schlimmer. Besonders übel sind Datenbanken. Was tun wir dagegen? Eigentlich lässt sich nicht wirklich was dagegen unternehmen. Im Netz kursieren viele Scripte die alle Schreiboperationen von Logs in’s RAM verlagern, davon halte ich persönlich wenig, weil: Strom weg = RAM weg = Daten & Logs weg = Keine Möglichkeit Ursachenforschung oder Fehler zu suchen.
Also, was hilft? Das gute alte Backup:
Backup auf einen Datenträger im Netzwerk.
Zuerst legen wir mal auf unserem NAS einen Nutzer und einen Order für das Backup an:
Jetzt hängt es davon ab, welche Zugriffe das NAS erlaubt. Mein Qnap kann NFS, SMB, SFTP. Ich nehme für das erste Backup zum Testen NFS, weil es das performanteste (und älteste aber auch das unsicherste) Protokoll ist. Wie NFS für ein QNAP-NAS geht steht hier.
Also bringen wir NFS auf dem Raspberry Pi mal an den Start:
# nfs pakete installieren sudo apt install nfs-common time bzip2 # mount Verzeichnis erstellen sudo mkdir /media/nas # exportierte NAS Feigaben prüfen # mit IP sudo showmount -e 192.168.4.183 # oder DNS Namen sudo showmount -e nas.fritz.box # sieht dann so aus: (ich setzte es mal hinter eine # falls jemand den Block einfach nur kopiert ohne zu lesen ;-) #Export list for 192.168.4.183: # /backup * # /Public * # /Upload * # Sieht gut aus, also mounten wir das NFS sudo mount -t nfs -o rw,soft,nolock nas.fritz.box:/backup /media/nas # von mount kommt kein Okay oder sowas. Wenn kein Fehler kommt hat's funktioniert cd /media/nas/ touch hello-nas # jetzt sollte auf dem NAS die Datei hello-nas sichtbar sein # damit wir jetzt gleich nicht auf das Backup warten müssen oder das Terminal offen lassen müssen # starten wir mit screen ein virtuelles Terminal screen # und starten das eigentliche Backup sudo time dd if=/dev/mmcblk0 of=/media/nas/backup_$(hostname)_$(date +%Y-%m-%d_%H-%M-%S).img bs=1MB # das dauert jetzt ne Weile und time zeigt und wie lange genau # Das erstellte Image ist so groß wie die Speicherkarte, daher komprimieren wir es mit bzip bzip2 -7 *img
Nachdem bzip2 fertig ist, ist das Backup fertig und auf dem NAS gesichert. Es kann im Falle eines Ausfalls der SD Karte einfach mit einem Tool wie Etcher auf eine neue SD-Karte kopiert werden.
Wenn Dir der Beitrag gefallen hat oder nützlich für dich war, hinterlass mir einen Kommentar.
Hallo,
Vielen Dank für die Erklärung. Bis touch hello-NAS hatte ich es geschafft. Wenn ich allerdings das eigentliche Backup starte, kommt bei mir auf dem pi die Meldung: Keine Berechtigung!?
„pi@pi:/media/nas $ sudo time dd if=/dev/mmcblk0 of=/media/nas/backup_$(hostname)_$(date +%Y-%m-%d_%H-%M-%S).img bs=1MB
dd: konnte ‚/media/nas/backup_pi_2021-06-17_19-33-07.img‘ nicht öffnen: Keine Berechtigung
Command exited with non-zero status 1
0.00user 0.00system 0:00.00elapsed 75%CPU (0avgtext+0avgdata 2004maxresident)k
0inputs+0outputs (0major+103minor)pagefaults 0swaps“
Eine Idee, woran das liegen könnte?
Dank und Gruß,
Micha
Hallo Micha, die Lösung steht schon da: dd: konnte ‘/media/nas/backup_pi_2021-06-17_19-33-07.img’ nicht öffnen: Keine Berechtigung
Der User der das Backup macht hat keine Berechtigung auf /media/nas/
Probiere es mit /tmp/backup_pi… und schau dir an welche Berechtigungen benötigt werden bzw. als welcher User die Daten schreiben will und passe dann /media/nas entsprechend an.
Oder die einfache Lösung: Mach „sudo su“ und führe das Backup nochmal aus. Und ändere danach den Nutzer von dem Backup.
Viel Spaß
Hagen
Hallo,
danke für die Anleitung. leider habe ich ein kleines Problem.
pi@linux-tree:~ $ sudo mkdir /media/nas
pi@linux-tree:~ $ sudo showmount -e 192.168.5.5
clnt_create: RPC: Unable to receive
pi@linux-tree:~ $ sudo mount -t nfs -o rw,soft,nolock 192.168.5.5:/backup/media/nas
mount: 192.168.5.5:/backup/media/nas: can’t find in /etc/fstab.
pi@linux-tree:~ $
nun stellt sich mir die Frage, liegt es an der Samba1 software auf der alten NAS?
Lars
Hallo Hagen,
hat bei mir funktioniert, danke für die Anleitung.
Super wäre, wenn es eine Möglichkeit gäbe, dass man ein wöchentliches Backup automatisch macht, kennst du da eine Lösung?
danke und lg
Matthias
Hallo Matthias, danke für das Feedback.
Die Lösung ist ganz einfach, leg dir doch einfach einen Cronjob an.
Im Prinzip: Backup erstellen und auf einen entfernten Rechner kopieren.
Hallo Hagen,
danke für die Rückmeldung, da muss ich dann wohl recherchieren, da ich mich da überhaupt nicht auskenne.
danke und lg
Matthias