Jérémy Ozog

Sauvegarde automatique sur WD My Book Live sous Ubuntu

Publié par Jérémy Ozog le dans Mybooklive

J’ai récemment acquis un disque dur réseau Western Digital, le dénommé My Book Live, afin de faire des sauvegardes incrémentales de mes données personnelles (les photos abondent vite et je ne souhaite plus payer de l’espace de stockage en ligne).

Accès au My Book Live par SSH

Commençons par activer l’accès au disque par SSH sans avoir à saisir de mot de passe, étape essentielle pour automatiser le processus de sauvegarde.

ssh root@MyBookLive
passwd root
ssh-keygen -t rsa
ssh root@MyBookLive mkdir -p .ssh
cat .ssh/id_rsa.pub | ssh root@MyBookLive 'cat >> .ssh/authorized_keys'
ssh root@MyBookLive
chmod -R go-rwx .ssh
exit

A partir de maintenant, vous pouvez vous connecter sur votre disque My Book Live sans saisir votre mot de passe (depuis la machine où a été générée la clé uniquement, bien entendu), un premier pas vers l’automatisation. Pour cela, il vous suffira de :

ssh root@MyBookLive

Sauvegarde des données avec rsync

Maintenant, voilà un tout petit script que j’ai appelé sync_data_nas.sh et qui va synchroniser votre répertoire personnel avec un répertoire présent sur le My Book Live (des commentaires ont été ajoutés directement dans le script pour une meilleure lisibilité) :

# Répertoire local à synchroniser
# Dans mon cas, je synchronise le dossier personnel
LOCAL_DIR=/home/jeremy/

# Adresse de votre répertoire personnel sur le disque réseau (ici, le My Book Live)
# Par défault, les partages créés via l'interface utilisateur se trouvent dans /shares
REMOTE_DIR=root@MyBookLive:/shares/jeremy/

# Lancement de la synchronisation
# Options utilisées pour rsync :
# --delete : supprime du disque réseau tous les fichiers qui n'existent plus en local
# --size-only : utilise uniquement les tailles des fichiers pour déterminer si un fichier a été modifié depuis le dernier backup (plus rapide)
# --filter : filtre les fichiers qu'on ne souhaite pas sauvegarder (dans mon cas, les fichiers temporaires suffixés avec '~', les répertoires cachés commençant par '.' et le dossier "Téléchargements")
rsync -ar $LOCAL_DIR $REMOTE_DIR --delete --size-only --progress --filter "- *~" --filter "- .*" --filter "- Téléchargements"

La première copie peut être longue selon la quantité de donnée que vous stockez. Pour cette première copie, vous pouvez même opter pour une copie directe des plus gros répertoires, la copie directe étant bien plus rapide que rsync.

Planification de sauvegardes régulières

Pour exécuter le script périodiquement, une tâche cron fera l’affaire.

Pour éditer la table de configuration de Cron :

crontab -e

La syntaxe pour spécifier la tâche à exécuter et le moment où elle est exécutée est la suivante :

minute heure jour mois jour_semaine commande

Une valeur peut être remplacée par * pour signifer que toute valeur de ce champ est acceptable.

Dans mon cas, je veux l’exécuter chaque jour à 20h30, j’ajoute donc la ligne suivante en pointant vers le répertoire où le script sync_data_nas.sh se trouve :

30 20 * * * SCRIPT_FOLDER/sync_data_nas.sh

Ctrl + O et Entrée pour sauvegarder.

Et c’est réglé, vos données seront sauvegardées régulièrement et automatiquement sur votre My Book Live !


Cet article vous a plu ? Partagez-le avec vos connaissances !
Share on Google+ Share on Facebook Tweet about this on Twitter Share on LinkedIn Email this to someone

comments powered by Disqus