Sauvegarder Un ou plusieurs répertoires d’un nas synology vers un autre serveur (Raspberry pi dans mon cas)

J’ai essayé de multiples techniques pour faire des backups de certains répertoires de mon Syno et l’une des plus simple est la suivante.

DESCRIPTION DU PROCESS

Nous allons monter dans fstab du raspberry pi,  le ou les répertoires du syno que nous souhaitons sauvegarder. Ceci avec le protocole NFS.

Ensuite il suffira de faire un script rsync pour faire une sauvegarde en local sur le raspberry pi.

Première étape: on active NFS sur le syno

Dans DSM, on se rend dans le panneau de configuration, puis dans « service de fichiers » puis « nfs » et on coche « activer le service nfs ».

Etape deux on autorise nfs sur nos répertoires à sauvegarder

On se rends désormais dans le panneau de configuration, puis « dossier partagé ».

On sélectionne le dossier qu’on souhaite partager (sauvegarder), dans mon cas « documents » et on clique (en haut) sur le bouton « modifier ».

Dans la fenêtre qui s’ouvre on clique sur le dernier onglet a droite « autorisation nfs » puis « créer ».

Dans cette nouvelle fenêtre il convient dans le 1er champ de noter l’adresse ip du raspberry pi (ou du serveur de votre choix – celui qui pourra monter le répertoire « documents » du syno) ==> CECI IMPLIQUE QUE VOTRE SERVEUR DE DESTINATION ET VOTRE SYNO AIENT UNE ADRESSE IP FIXE!!

Dans la case « privilège » on précise « lecture/écriture »

Dans la case « squash » : « mapper tous les utilisateurs sur admin »

Dans la case « sécurité »: « sys »

Et on coche les 3 cases du dessous.

On valide, et c’est prêt! 

On passe au Raspberry Pi

On commence par se connecter en ssh au Rpi:

ssh user@ip_du_rpi

On met à jour les paquets:

sudo apt update && sudo apt upgrade -y

On installe le paquet nfs-common

sudo apt install nfs-common

On crée le répertoire qui servira de point de montage au répertoire « documents » du syno. Perso, je le crée dans /media, mais on pourrait tout aussi bien le faire dans /mnt. Donc dans mon cas:

sudo mkdir /media/syno_documents

Ensuite on va modifier le fichier fstab pour qu’il monte ce fameux répertoire à chaque démarrage du Rpi.

On édite donc le fichier fstab:

sudo nano /etc/fstab

Et on ajoute une ligne tout en bas:

<adresse IP de votre Synology>:/volume1/documents /media/syno_documents/ nfs defaults 0 0

Vous ne mettez pas les braquets avant et après l’adresse ip du syno. Imaginons que l’adresse ip du syno soit: 192.168.1.100, on aurait donc:

192.168.1.100:/volume1/documents/ /media/syno_documents/ nfs defaults 0 0

On redémarre pour s’assurer que tout fonctionne bien, puis on ouvre un terminal (on se reconnecte en ssh au rpi) et on verifie que le répertoire est bien monté.

cd /media/syno_documents

puis

ls

Et on devrait voir s’afficher le contenu du répertoire « documents du syno.

 

On peux créer son script rsync

On peux désormais créer le script qui va lancer la sauvegarde.

Personnellement je crée un répertoire « script » dans /home/user du rpi:

cd

(pour revenir dans le répertoire du user courant)

Puis:

mkdir script

ensuite:

cd script

(pour entrer dans le répertoire « script »)

Et enfin:

nano script_backup_doc_syno.sh

(le nom est relou, mais vous mettez ce que vous voulez 😉 )

Dans ce nouveau fichier vous taperez les lignes suivantes:

#!/bin/bash

#backup de mon documents du syno vers rpi

rsync -avzh /media/syno_documents/ /home/user/Documents

(en prenant soin de remplacer « user » par le nom de l’utilisateur de votre pi)

On enregistre le fichier avec « ctrl-o » puis « y » puis ctrl-x »

Et enfin, on rends le script executable:

sudo chmod +x script_backup_doc_syno.sh

On peut lancer le script immédiatemment avec la commande:

./script_backup_doc_syno.sh

Mais nous allons faire mieux. Nous allons créer une tâche crontab pour qu’il se lance seul aux jours et heures de notre choix.

crontab -e

Cette commande ouvre le fichier crontab.

On choisit l’éditeur nano (réponse 1)

Puis, tout en bas on ajoute la ligne suivante: (si l’on souhaite un backup quotidient à 22h30 par exemple):

30 22 * * * /home/user/script/script_backup_doc_syno.sh

Puis on enregistre le fichier et on laisse faire….