Jump to content

Sauvegarder D'un Ordinateur Vers Un Nas Avec Rsync


Recommended Posts

Sauvegarder D'un Ordinateur Vers Un Nas Avec Rsync

Les éléments qui suivent nécessite d'avoir:

- Un accès à votre NAS par internet (ou à minima, un accès en local pour des ordinateurs présent sur le même réseau que le NAS)

- L'option réplication distante active sur le QNAP. Je vous renvoie vers la documentation officielle de QNAP pour cela.

Objectif du tuto:Sauvegarder des dossiers d'un ordinateur distant (exemple: Bureau) vers le NAS.Présentation de différents outils pour réaliser et planifier les sauvegardes.

Niveau:Débutant

Pourquoi utiliser RSync? RSync permet de réaliser des sauvegardes incrémentielles. A la première utilisation, RSync copie tous les fichiers et dossiers à sauvegarder (normal quoi). Ensuite, il ne copiera que les éléments modifiés depuis la précédente sauvegarde. Cela permet de gagner un temps phénoménal pour les backups.

J'ai un MAC avec TimeMachine, il y a t-il un intérêt pour moi? Oui, carTimeMachine ne fonctionne que dans un réseau local. RSync permet lui de réaliser des sauvegardes en passant par internet. Il permet également une gestion beaucoup plus fine des sauvegardes. Par contre, il ne permet pas, à ma connaissance, de restaurer une machine défaillante comme peut le faire TimeMachine.

Utiliser RSync sous Windows - QtdSync

Qtdsync est un logiciel récent qui a tout pour lui. Interface sobre etélégante, fonctionnalités nombreuses, gestion des dossiers accentuées. Sous licence GPL, le programme est gratuit (donations acceptées). Il remplacera aisément Deltacopy qui ne gère toujours pas l’UTF-8 sans bidouillage de dll. Vous pourrez le télécharger ici.

Le programme est vraiment très simple d'utilisation. Le site propose un petit tutorial pour mettre en place vos premières sauvegardes en un clind'oeil.

En gros:

- On donne un nom à la sauvegarde

- On choisis un mode de sauvegarde (Synchronize only ou Differential backup -moi, j'utilise Synchronize only. Cela évite les sauvegardes de sauvegardes qui prennent une place dantesque.)

- Entrer l'adresse de votre serveur, elle sera du type rsync://serveur.fr:port

- On vous proposera alors automatiquement un dossier où effectuer les sauvegardes. (Veuillez donc à avoir crée un dossier de partage spécifique car on ne peut pas choisir de sous-répertoire - dommage)

- Utiliser l'option Schedule pour programmer l'horaire des sauvegardes.

Vous êtes parez. Bien entendu, Qtdsync permet la sauvegarde entre 2 répertoires locaux, clé USB, etc… C'est Rsync qui tourne en tâche de fond.

Utiliser RSync en ligne de commande sous Mac, Linux ou Windows

Cette partie est librement inspirée de ce tuto.

Les exemples fournis ci-dessous on était testées sous Mac, toutefois ellesdevrait être compatible Linux.

Cette section à pour but de faire découvrir RSync aux personnes qui, comme moi il y a peut, ne connaissent pas.

Pas d'interface graphique sous Mac car celles que j'ai testé ne fonctionnent pas. Sous Linux, je n'ai pas testé.

Ouvrez une fenêtre de terminal et voyons de suite la commande de base RSync pour se connecter à notre serveur.

rsync -cazov "/Mon/dossier/à/sauvegarder" rsync@serveur.fr::Qsync
-cazov correspond à une série d'arguments dont vous trouverez le détail plus bas. A mon sens, les plus importants sont a et z. Le o est facultatif car implicitement contenu dans l'option a. Ajouter des options redondantes est un moyen mnémotechnique de les retenir (bon ok, ici, y a pas énorme à retenir). Aprés les options, on doit ajouter le chemin du répertoire à sauvegarder. Puis le nom d’utilisateur sur le serveur à contacter. Enfin, on indique le répertoire utilisé pour la sauvegarde des données, ici le dossier de partage QSync. La ligne présentée ci-dessus correspond à la commande de base pour sauvegarder le contenu d’un dossier sur le serveur. Détaillons d’autres options intéressantes. Si vous souhaitez visualiser en temps réel l'avancement de la sauvegarde,ajouter l'argument –progress ce qui donnera:
rsync -cazov --progress "/Mon/dossier/à/sauvegarder" rsync@serveur.fr::Qsync
Si vous souhaitez exclure des fichiers d'un certain type par exemple *.bak, ajouter simplement l'option --filter "-*.bak" (ne pas oublier le "-" qui signifie exclure), voici la ligne de commande:
rsync -cazov --progress --filter "- *.bak" "/Mon/dossier/à/sauvegarder"rsync@serveur.fr::Qsync
Ajouter autant de filtres que de type de fichier à exclure Si vous souhaitez exclure un dossier complet, utiliser la commande --exclude "mondossier/". Attention, l'exclusion est relative au dossier sauvegardé. Concrétement, pour exclure un dossier contenu dans “/home/user/mondossieràsauver/”(chemin d’accés absolu), il suffit simplement d’écrire --exclude"/inutile"(chemin d’accès relatif au dossier à sauvegarder) - Il ne faut surtout pas mettre --exclude"/home/user/mondossieràsauver/inutile". Ajoutons cela à notre ligne de commande.
rsync -cazov --progress --filter "- *.bak" --exclude "/inutile""/Mon/dossier/à/sauvegarder" rsync@serveur.fr::Qsync
Si l’on fait un essai, on s’aperçoit qu’un mot de passe est demandé. Il s’agit évidemment du mot de passe utilisateur choisi dans l’interface de gestion du NAS. Pour automatiser cette tâche, commençons par créer un fichier texte contenant uniquement le mot de passe de cet utilisateur et enregistrons-le sous le nom: pwd.txt. Ce fichier ne devra être consultable que par le propriétaire du fichier. Il faut donc "Refuser l'accès" à toutes les autres personnes. Dans une fenêtre de terminal, exécuter la commande ci-dessous (commande spécifique à Linux et MacOS).
chmod 610 pwd.txt
Grâce à l’option --password-file=/chemin/vers/pwd.txt, il n’est plus utile de rentrer le mot depasse manuellement.
rsync -cazov --progress --password-file=/chemin/vers/pwd.txt --filter "- *.bak"--exclude "/inutile" "/Mon/dossier/à/sauvegarder"rsync@serveur.fr::Qsync
Si vous décidez de changer le port par défaut du serveur Rsync, indiquer le nouveau port avecl'option --port=numéroduport.
rsync -cazov --progress --password-file=/chemin/vers/pwd.txt --port=8888 --filter "-*.bak" --exclude "/inutile""/Mon/dossier/à/sauvegarder" rsync@serveur.fr::Qsync
Passons à une option un peu plus dangereuse (ça fait peur non?), l'option --delete. Lorsque vous supprimerez un fichier dans le répertoire à sauvegarder, cela effacera le fichier sur leserveur.
rsync -cazov --progress --password-file=/chemin/vers/pwd.txt --port=8888 --filter "- *.bak"--exclude "/inutile" --delete "/Mon/dossier/à/sauvegarder"rsync@serveur.fr::Qsync
Oui mais alorslà, vous vous dites que ce serait quand même bien d'avoir une sauvegarde desfichiers effacés, au cas où, l'option backup est là pour ça:
rsync -cazov --progress --password-file=/chemin/vers/pwd.txt --port=8888 --filter "-*.bak" --exclude "/inutile" --delete --backup"/Mon/dossier/à/sauvegarder" rsync@serveur.fr::Qsync
Le must étant d'avoir un dossier correspondant à une date pour identifier la période du backup, voir l'option suivante --backup-dir=backup/`date +%Y-%m-%d`
rsync -cazov --progress --password-file=/chemin/vers/pwd.txt --port=8888 --filter "-*.bak" --exclude "/inutile" --delete --backup--backup-dir=backup/`date +%Y-%m-%d` "/Mon/dossier/à/sauvegarder"rsync@serveur.fr::Qsync
Prudence tout de même, surtout avec des sauvegardes journalières. Rsync crée à chaque fois un nouveau dossier de sauvegarde. Si vous avez beaucoup à sauvegarder, cela peut vite saturer votre disque. Je recommande une des variantes suivantes:
rsync -cazov --progress --password-file=/chemin/vers/pwd.txt --port=8888 --filter "-*.bak" --exclude "/inutile" --delete --backup--backup-dir=backup/`date +%Y-%m` "/Mon/dossier/à/sauvegarder"rsync@serveur.fr::Qsync
Pour créer un nouveau dossier de sauvegarde par mois. Ou bien
rsync -cazov --progress --password-file=/chemin/vers/pwd.txt --port=8888 --filter "-*.bak" --exclude "/inutile" --delete --backup --backup-dir=old/"/Mon/dossier/à/sauvegarder" rsync@serveur.fr::Qsync

Qui créer un dossier old contenant la sauvegarde précédente

Créer votre fichier script

Une fois votre ligne de commande terminée, enregistrons-la dans un fichier texte que nous allons nommer: backup.command . Appliquons la commande chmod u+x ~/backup.command pour la rendre exécutable (sous Windows, à la place de .command mettre .bat) Si on double-clique, la sauvegarde démarre.

OK OK, vous me direz, c'est bien, on peut lancer des backups à la main mais pour planifier la chose?

Programmer les sauvegardes

Sous Windows,utiliser Qtdsync présenté plus haut. Si vous voulez à tout prix utiliser laligne de commande, on utilisera le planificateur de tâches pour lancer le .bat avec la commande qui va bien.

Sous Linux et Mac, il y a CRON, un petit lien en anglais pas méchant sur le sujet http://adminschoice....quick-reference

Sous Mac, nous avons aussi iCal

Voyons cela de plus prés.

- Commençons par ouvrir iCal

- Créons un calendrier "Backups" ou "Sauvegardes"(Facultatif mais bien pratique pour ne pas encombrer les autres calendriers)

- Créeons un nouvel événement

- Choississez un horaire et une fréquence de répétition (tous les jours, toutesles semaines,…) et fin positionné sur Jamais

- Dans "alarme" choisir, "ouvrir un fichier" etsélectionner votre fichier backup.command à activer 0 minute avant.

Et voilà, facile non? iCal se chargera de vos sauvegardes comme un grand.

Ci-dessous,quelques options utiles issue de la doc de Rsync:

Doc RSync

Voilà, voilà.depuis que j'ai mis en place tout ça, les sauvegardes sont un vrai plaisir.

NOTA : J'ai écris ces notes après coup, si vous trouvez des erreurs, n'hésitez pas à me les signaler. Je corrigerai en conséquence.

NOTA 2 : J'ajouterai peut-être par la suite des notes sur CRON, qui est quand même super pratique pour faire des scripts.

Link to post
Share on other sites
  • 11 months later...

Bonjour,

Merci pour ce Tuto clair et précis sur Rsync.

Ma question : n'est-il pas possible d'utiliser l'interface graphique de Rsync qui existe dans "sauvegarde à distance" je crois? Mais qui est seulement faite pour une réplication entre 2 serveurs (je crois aussi...)

Dina

Link to post
Share on other sites
  • 1 year later...

Bonsoir,

 

Merci pour ce tuto Droid,

 

Le sujet date maintenant,

Malgré tes informations, en novice qui se respecte, j'ai une petite question.

 

 On vous proposera alors automatiquement un dossier où effectuer les sauvegardes. (Veuillez donc à avoir crée un dossier de partage spécifique car on ne peut pas choisir de sous-répertoire - dommage)

Comment créer un dossier de partage spécifique au serveur Rsync sur le NAS ?

 

merci

Fred

Link to post
Share on other sites

Bonjour et merci pour ta réponse GlaceNot,

Mais je ne crois pas que cela m'aide car le lien que tu me donne c'est pour une sauvegarde du Nas vers un serveur distant.

Pour ce qui est de créer un dossier de partage spécifique à Rsync il n'y a rien dans 'Réglages de privilège' onglet 'Dossier partagé', 'Créer'.

Link to post
Share on other sites
×
×
  • Create New...