Ci-dessous, les différences entre deux révisions de la page.
install:backup [2011/02/02 22:42] |
install:backup [2011/02/02 22:42] (Version actuelle) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Mettre en place un serveur de synchronisation avec rsync ====== | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Introduction ===== | ||
+ | |||
+ | D'un point de vue de l' | ||
+ | |||
+ | Pour le particulier, | ||
+ | |||
+ | **rsync** est prévu à cet effet. Il peut même faire plus. Il peut être utilisé pour la sauvegarde de "/ | ||
+ | |||
+ | <note important> | ||
+ | |||
+ | |||
+ | Pour une synchronisation de plusieurs dossiers, vous pouvez aller voir aussi du coté de **unison**. | ||
+ | ===== Les particularités de rsync ===== | ||
+ | |||
+ | **rsync** est un outil simple disponible sans installation particulière sous Ubuntu et existant pour divers systèmes d' | ||
+ | ==== Étude de cas ==== | ||
+ | |||
+ | Pour vous donner une idée de l' | ||
+ | |||
+ | * Masse de données : environ 30 Go | ||
+ | * Taux de modification des données : 1% par heure (environ 250 fichiers) | ||
+ | * Liaison dédiée 100Mbits entre les deux serveurs. | ||
+ | * Temps de synchronisation avec parcours de fichiers : 4h30 (du coup, on faisait que 3 synchros par jour). | ||
+ | * Temps de synchronisation avec rsync : 22min (quand on le fait 3x par jour, maintenant, on fait 1 synchro par heure avec un temps de synchro de 10min). | ||
+ | |||
+ | C' | ||
+ | |||
+ | |||
+ | |||
+ | ===== Configuration du serveur de synchronisation ===== | ||
+ | |||
+ | Sous Breezy, aucune installation particulière n'est à effectuer. Pour Hoary, reportez vous à la section //Sous Hoary// en fin de page. | ||
+ | |||
+ | Pour autoriser **rsync** à se lancer, il faut éditer le fichier ''/ | ||
+ | < | ||
+ | sudo vi / | ||
+ | </ | ||
+ | |||
+ | et modifier la ligne RSYNC à true | ||
+ | < | ||
+ | RSYNC_ENABLE=true | ||
+ | </ | ||
+ | |||
+ | |||
+ | Pour configurer **rsync**, on crée le fichier de configuration de rsync en éditant le fichier ''/ | ||
+ | |||
+ | < | ||
+ | sudo vi / | ||
+ | </ | ||
+ | |||
+ | En entête de ce fichier, il faut copier les lignes suivantes : | ||
+ | < | ||
+ | uid = rsync | ||
+ | gid = rsync | ||
+ | </ | ||
+ | Le démon rsyncd sera lancé en tant qu' | ||
+ | |||
+ | Dans ce fichier, on introduit les informations concernant les modules. Un module est une sorte de //partage// rsync. Dans notre cas, on va créer un module nommé '' | ||
+ | |||
+ | < | ||
+ | [share_rsync] | ||
+ | path = /srv/intern | ||
+ | | ||
+ | read only = false | ||
+ | </ | ||
+ | |||
+ | Vous pouvez bien entendu créer plusieurs modules de synchronisation. Il existe également d' | ||
+ | |||
+ | < | ||
+ | man rsyncd.conf | ||
+ | </ | ||
+ | |||
+ | //Remarque : //sous Hoary, vous devez rechercher la configuration de l'// | ||
+ | |||
+ | Ajouter un utilisateur et un groupe **rsync | ||
+ | ** | ||
+ | |||
+ | < | ||
+ | sudo useradd rsync | ||
+ | sudo passwd rsync | ||
+ | sudo groupadd rsync | ||
+ | sudo gpasswd -a rsync rsync | ||
+ | </ | ||
+ | |||
+ | Attribuer le répertoire de sauvegarde à **rsync** | ||
+ | |||
+ | < | ||
+ | sudo chown -R rsync:rsync /srv/intern | ||
+ | </ | ||
+ | |||
+ | Attribuer les droits adéquats au répertoire de sauvegarde | ||
+ | |||
+ | < | ||
+ | sudo chmod -R 777 /srv/intern | ||
+ | </ | ||
+ | |||
+ | Pour terminer, lancer rsync sans redémarrage avec la commande : | ||
+ | < | ||
+ | sudo / | ||
+ | </ | ||
+ | |||
+ | |||
+ | Le serveur est maintenant prêt pour recevoir les requêtes de synchronisation. | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ===== Configuration du client ===== | ||
+ | |||
+ | Les synchronisations du (ou des) client(s) peuvent se faire par le biais de la commande '' | ||
+ | |||
+ | < | ||
+ | rsync -az --stats --delete --force --ignore-errors --exclude-from=/ | ||
+ | </ | ||
+ | |||
+ | Avec cette commande, j' | ||
+ | |||
+ | Dans le fichier **rsync.exclude**, | ||
+ | Attention, ne pas oublier les **/** en fin de ligne pour les répertoires ainsi que "- " (moins espace) avant chaque ligne. | ||
+ | |||
+ | Les options clés se trouvant juste après la commande sont explicitées ci-dessous : | ||
+ | * **'' | ||
+ | * **'' | ||
+ | |||
+ | La destination de synchronisation (notre serveur) s' | ||
+ | |||
+ | < | ||
+ | adresse_ip:: | ||
+ | </ | ||
+ | |||
+ | Notez que si vous ne placez pas le ''/'' | ||
+ | |||
+ | Donc, en exécutant cette commande, le répertoire ''/ | ||
+ | |||
+ | Sur une station de travail, on peut utiliser cette commande à chaque fois où l'on veut faire un petit backup (c'est ce que je fais à la maison) mais en entreprise, on souhaite que ces synchronisations (ou backup, comme vous voulez) soient faites à des intervalles fixes. | ||
+ | |||
+ | Pour ce faire, nous allons configurer [[:Cron]] pour lancer les synchronisations automatiquement. Ceci est fait en ajoutant une ligne au fichier ''/ | ||
+ | |||
+ | < | ||
+ | 05 7-22 * * * | ||
+ | </ | ||
+ | |||
+ | N' | ||
+ | |||
+ | < | ||
+ | sudo / | ||
+ | </ | ||
+ | |||
+ | Pour plus d' | ||
+ | |||
+ | |||
+ | Si l' | ||
+ | |||
+ | < | ||
+ | C:\Mes documents\ | ||
+ | </ | ||
+ | devient : | ||
+ | < | ||
+ | / | ||
+ | </ | ||
+ | ===== Sous Hoary ===== | ||
+ | ==== Configuration de l' | ||
+ | |||
+ | Sous Hoary, nous devons configurer notre //Internet Super Daemon// pour gérer les connexions entrantes **rsync**, pour ce faire, on édite le fichier ''/ | ||
+ | |||
+ | < | ||
+ | sudo vi / | ||
+ | </ | ||
+ | |||
+ | Et on y ajoute la ligne : | ||
+ | < | ||
+ | rsync stream tcp nowait root / | ||
+ | </ | ||
+ | ==== Rechargement de la configuration ==== | ||
+ | |||
+ | Voici la commande à effectuer pour recharger le fichier de configuration de l'// | ||
+ | |||
+ | < | ||
+ | sudo / | ||
+ | </ |