Abysse Tech

Ma Vie Digitale

Backup Raspberry PI 3 sur un Volume SMB

by

Bonjour à tous,

Voici un petit guide pour ceux qui souhaiterait faire un backup de leur Raspberry PI et ce malgré certaines contraintes.

L’organisation informatique à la maison me force à faire des backup sur un Volume Samba depuis un mac vers un PC.

Je rebute à mettre les mains dans le cambouis de Windows pour faire un script DOS / PowerShell que je ne connais pas bien mais via le mac / linux je peux en quelques secondes faire un script et une programmation de tâches.

Ici, le Windows pour le moment est mon volume de stockage (gros boitier avec baie de disques) et je peine à trouver un système de stockage optimal.

Toujours est il que je passe un temps fou sur mon raspberry pour l’automation de notre appartement et qu’un crash de la carte SD serait synonyme d’un retour à l’âge de labeur.

Bref, en étudiant rapidement la question et en fonction de ce que vous faites de votre raspberry, la meilleure solution de sauvegarde, reste une solution de backup bloc par bloc plutôt qu’un rSYNC venant cloner les données.

Avec rSync bien que cela soit incrémental peut causer des soucis de récupération de base de données.

Donc, j’opte pour une copie pure et simple de ma carte SD.

Sachez qu’une copie bloc par bloc copie même les données vides. Du coup si vous avez une carte SD de 256 GB la solution n’est surement pas optimale. (rSYNC / MySQL dump serait la solution).

Ici le backup prend 1 heure pour une carte de 16 GB. Et le backup produit une archive de 5GB (gérable).

L’avantage de cette solution c’est la simplicité de mise en place et de restauration des données.

Voici comment faire:

  1. Activer le partage de dossier sous Windows. (Clic droit sur le dossier / Propriété / Partage Avancé / Activer
  2. Donner les autorisations d’écritures (Partage Avancé / Autorisations)
  3. Créer un fichier avec l’extension .sh dans le dossier de votre choix
  4. création du dossier //Users/MyMacUser/mnt
#!/bin/bash
backup=$(date +"%m_%d_%Y")

mount_smbfs //192.168.2.2/rasberrypi //Users/MyMacUser/mnt

ssh pi@192.168.1.27 "sudo dd if=/dev/mmcblk0 bs=1M | gzip -" | dd of=//Users/MyMacUser/mnt/rasberrypi_$backup.gz

find //Users/MyMacUser/mnt/backup* -mtime +60 -exec rm {} \;

umount //Users/MyMacUser/mnt

Explications des paramètres:

 

mount_smbfs //192.168.2.2/rasberrypi //Users/MyMacUser/mnt

-> //192.168.2.2/rasberrypi -> Le partage Windows.

-> //Users/MyMacUser/mnt -> Le dossier local sur Mac

 

ssh pi@192.168.1.27 "sudo dd if=/dev/mmcblk0 bs=1M | gzip -" | dd of=//Users/MyUser/mnt/rasberrypi_$backup.gz

 

-> Ici il faut l’IP du raspberry PI pour se connecter en SSH. Ici 192.168.1.27

ATTENTION: Cela sous entend que vous avez créé un jeu de clef publique / privée pour éviter de vous connecter en tapant le mot de passe. (Article à Venir)

-> Ensuite il vous faut récupérer le nom de la partition de votre carte SD. Généralement c’est mmcblk0 mais pour en être sur, connectez vous en SSH au raspberry et tapez

lsblk

Ce qui vous retournera quelque chose comme ceci:

pi@raspberrypi:~ $ lsblk
NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
mmcblk0     179:0    0 14.5G  0 disk
├─mmcblk0p1 179:1    0 41.8M  0 part /boot
└─mmcblk0p2 179:2    0 14.5G  0 part /
dd of=//Users/MyMacUser/mnt/rasberrypi_$backup.gz

-> Ici on remplace //Users/MyMacUser/mnt/ par le dossier que vous avez créé et monté.

find //Users/MyMacUser/mnt/backup* -mtime +60 -exec rm {} \;

On efface les backup vieux de plus de +60 jours. Vous pouvez donc changer cette valeur.

Sachant que le backup est hebdomadaire. Le volume max de stockage de sauvegarde est d’environ 48GB pour une carte SD de 16GB.

Et voila! Vous avez un premier de backup en dur permettant de pallier à une perte des données et surtout permettant une récupération de votre système en moins d’une heure via à un logiciel de restauration d’image de carte SD.

Attention. Ne comptez jamais trop sur un seul système. Ici le raspberry héberge Jeedom et du coup je fais aussi un dump des bases de données.

 

Leave A Comment

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.