Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
rsync ? qu'est-ce que c'est ?
Envoyé par: deb


bonjour,

je vois de temps en temps, et entends parler de ... rsync

je vois de loin ce que c'est , mais de loin seulement
est-ce que quelqu'un aurait la gentillesse de m'expliquer en qq mots
à quoi ca sert , et quel en est l'utilisation la plus courante ?

cordialement
deb

Poste le Monday 21 June 2004 21:56:51
Répondre     Citer    
Re: rsync ? qu'est-ce que c'est ?
Envoyé par: Jonesy's

Bonsoir,

Rsync : il y a un serveur et un client.
En gros, le serveur permet de mettre à disposition tout le contenu d'un répertoire et ses sous répertoires.
Le client, la première fois va récupérer tout le contenu. Mais les fois suivantes, il ne va récupérer que ce qui a changé depuis la dernière fois qu'il s'est connecté.
Ensuite il y a différentes options et commandes, mais voilà en gros...

Un exemple concret : mettre un serveur rsync à dispo sur les sources à packages d'une distribution en cours de création (comme la Slackware -current) permet aux "fidéles" de récupérer les changements (nouveaux packages, mise à jour) petit à petit sans tout récupérer à chaque fois et sans faire la différence à la main.

@+


Poste le Monday 21 June 2004 23:16:17
Répondre     Citer    
Re: rsync ? qu'est-ce que c'est ?
Envoyé par: Jonesy's

PS : cela me permet aussi, en local, de faire une sauvegarde automatique de mon système et de mes homes (rsync du système principale vers un autre sur un autre disque dur).


Poste le Monday 21 June 2004 23:17:52
Répondre     Citer    
Re: rsync ? qu'est-ce que c'est ?
Envoyé par: deb

merci Jonesy's pour tes explications,

ce qui m'intéresse dans ton exemple, c'est la possbilité
de faire une sauvegarde entière d'un disque dur

je voudrais effectivement faire une copie ( une pure photo de mon DD )
sur un autre DD ( considéré comme externe ),

si j'ai bien compris, c'est possible avec rsync, mais faut-il auparavant formater
le DD externe exactement comme le DD interne ( partitiions ... ) ?

Poste le Tuesday 22 June 2004 09:48:59
Répondre     Citer    
Re: rsync ? qu'est-ce que c'est ?
Envoyé par: oudoubah

Salut,

> ( une pure photo de mon DD )

Tu peux le faire aussi avec dd

Avec rsync:
tu vas copier toute ton arborescence sur le deuxième disque. Tu n'as pas besoins d'avoir le même partitionnement, ni le même système de fichiers.
C'est comme si tu copiais un répertoire dans un autre.

Avec dd:
tu copies la partition elle-même dans un fichier (si tu as une partition de 500 Mo, tu auras un fichier de 500 Mo) ou une autre partition (qui a besoin d'être de la même taille). C'est le même principe que ghost sous windows.

Pour rsync, ca marchera dans un sens, mais peut-être pas dans l'autre (suppression de fichiers par exemple). Il ne fait que mettre à jour des fichiers.

Oudoubah


Poste le Tuesday 22 June 2004 11:31:10
Répondre     Citer    
Re: rsync ? qu'est-ce que c'est ?
Envoyé par: deb


Oudoubah a écrit :
>Salut,
>
>> ( une pure photo de mon DD )
>
>Tu peux le faire aussi avec dd

par exemple si je connecte mon 2ème DD sur /dev/hdb
( le premier étant sur /dev/hda )

est-ce que : 'dd if=/dev/hda of=/dev/hdb' va me recopier "bit à bit" ( c'est le
sens de pure photo ) le contenu du premier DD sur le second,

de telle sorte que le second soit complètement identique au premier ??

ce qui serait pratique en cas de panne du premier DD, dans ce cas là
j'échange le premier contre le 2nd, et hop ! tout comme avant !

est-ce possible d'avoir le même résultat avec rsync ??

Poste le Tuesday 22 June 2004 12:19:03
Répondre     Citer    
Re: rsync ? qu'est-ce que c'est ?
Envoyé par: oudoubah

> est-ce que : 'dd if=/dev/hda of=/dev/hdb' va me recopier "bit à bit" ( c'est le
> sens de pure photo ) le contenu du premier DD sur le second

C'est ça. Attention quand même à ce que tes 2 disques coient de la même taille! Si le 2nd est plus petit, tu ne pourras pas tout copier, si le 2nd est plus grand, alors c'est lors du retour (copier hdb dans hda) que ca risque de planter.
En plus, je ne sais pas comment ça réagira si la table des partitions n'est pas conforme avec le disque.

> de telle sorte que le second soit complètement identique au premier ??

Ce sera complètement identique

> est-ce possible d'avoir le même résultat avec rsync ??

Avec rsync, ce qu'il faut que tu fasses, c'est avoir le même partitionnement sur les 2 disques (sinon tu devras modifier /etc/fstab et peut-être /etc/lilo.conf ou /boot/grub/grub.conf)

Si tu fais le même partitionnement avec le même nom des partitions (la copie de hda6 est hdb6, ...), alors rsync devrait être plus rapide au final.


Maintenant, si ton système est bien installé, et que tu ne rajouteras pas souvent d'applications, tu peux le faire avec dd.
Dans ce cas tu sauvegarderas le répertoire /home régulièrement avec
dd if=/dev/hdaX of=/dev/hdbX
où X est le numéro de la partition /home


Poste le Tuesday 22 June 2004 13:36:00
Répondre     Citer    
Re: rsync ? qu'est-ce que c'est ?
Envoyé par: Jonesy's

Bonjour,

Perso, je trouve le rsync plus souple.

Petite explication :
Mon système principal/stable/quotidien est ainsi :
/ sur /dev/hda5 (4 Go)
/home sur /dev/hda6 (5 Go)
Mon "clone", la copie, est ainsi :
/ sur /dev/hdb5 (4 Go)
/home sur /dev/hdb6 (5 Go)

Les partitions font la même taille et sont formater avec le même filesystem.
Pour le filesystem ce n'est pas obliger, mais je ne vois pas pourquoi changer.

Je fais 2 rsync, un pour chaque partition (hdaX). Pour chaque partition j'ai une liste de fichier à ne pas mette à jour (option rsync). Par exemple pour la partition / (root) je ne met pas à jour des fichiers et répertoires tel que /tmp, /proc, /etc/fstab, /etc/lilo.conf, ... Certains car inutile de les tenir à jour, d'autres me permettant d'avoir un système bootable sans rien faire. Ainsi mon "clone" est bootable à tout moment (car j'ai adapté les fichiers nécessaires qui font parti de la liste à ne pas mettre à jour).
Ainsi j'ai une copie/sauvegarde de mon système. Mais cette copie étant bootable, je m'en sert aussi comme système de test/construction de packages/.... Et une fois que j'ai fais le test que je voulais, je remet ma copie à jour. Ce qui va remplacer juste ce que j'ai modifié pour mes tests.
Je teste sans risque et j'ai toujours ma sauvegarde. Tout benef.
En plus, de la sauvegarde et des tests "one shot", je peux faire des tests permanents. Par exemple, mon système principal a le noyau 2.4.x. Ma copie a les noyaux 2.4.x et 2.6.x (choix avec lilo). Il me permet donc à tout moment de tester le 2.6 sans aucun risque. Mon système stable/principal restant absolument vierge du 2.6. Ceci est possible grace aux listes d'exclusion de mise à jour de rsync.

Pour les delete, je ne suis pas sur de comprendre ce que vous voulez dire, mais avec rsync on peut ne pas effacer les fichiers sur la copie qui n'existent plus sur l'original. Perso, je m'en fou, j'efface. Attention si tu n'efface pas sur la copie, prevoir des partitions plus grandes pour la copie que pour le principale. Si par accident j'ai effacer sur le système principal, à moi d'aller recherche ce que j'ai effacé sur la copie avant la prochaine mise à jour. Car pour faire les mises à jour principal/copie, il n'y a que 3 choix :
- à la main : pas automatique, pas bien.
- utiliser anacron. Pas 'cron' ou 'at' car je veux faire une seule sauvegarde par jour pour /home et 2 ou 3 fois par semaine pour / (actuellement car il y a la -current). Et 'cron' et 'at' fonctionnent avec des heures donc si la machine n'est pas alumée à cette heure là, pas de sauvegarde.
- faire ajouter un script dans l'init au démarrage qui fais les sauvegardes avec une gestion de fichiers flag. (j'ai choisie cette solution).

Enfin, pour remettre le système principal à jour en cas de merde, rien de plus simple on fait un rsync dans le sens inverse à partir de la copie sur laquelle je peux booter !

Bref, ce n'est peut être pas le meilleur, le plus rapide et le plus simple des systèmes de sauvegarde, mais il me donne une souplesse d'utilisation quasi infinie (si je veux faire une sauvegarde toute les heures des mails des utilisateurs rien ne m'en empeche) et il fait ce que je lui demande.
Que demande le peuple ! ;-)

Voilà, @+


Poste le Tuesday 22 June 2004 13:53:57
Répondre     Citer    
Re: rsync ? qu'est-ce que c'est ?
Envoyé par: deb

merci pour vos réponses qui prennent la forme
d'un petit post sur comment sauvegarder un DD

une dernière précision,
#oudoubah a écrit :
>En plus, je ne sais pas comment ça réagira si la table des partitions n'est >pas conforme avec le disque.

En fait c'est cela qui m'intrigue avec 'dd if=/dev/hda of=/dev/hdb' ,
est-ce que cette commande va aussi recopier la table des partitions
du 1er DD sur le 2nd ? ou est-ce qu'il faut auparavant les avoir
synchronisées ?

Si 'dd' n'écrase pas la table des partitions du 2nd DD, alors il va écrire
bettement les partitions du 1er DD sans tenir compte du partitionnement
de 2nd, a priori différent. Et dans ce cas je prévois un résultat surnaturel .

'rsync', si j'ai bien compris, ne s'intéresse qu'aux fichiers et se fiche
éperduement du partitionnement du DD . C'est-à-dire que je pourrais
avoir un tas de partition sur le 1er DD et une seule grosse sur le 2nd,
que je pourrais monter sur /mnt/disk, pour recopier ou updater du 1er au
2nd il suffirait de faire : 'rsync /* /mnt/disc'

**********
j'ai bon ??

Poste le Tuesday 22 June 2004 14:53:22
Répondre     Citer    
Re: rsync ? qu'est-ce que c'est ?
Envoyé par: oudoubah

Pour rsync, tu as tout juste (pour le principe, pour la commande, je ne connais pas).

Pour dd, il copie tout de chez tout (y compris la table des partitions).
Si les disques ne sont pas de la même taille, ca fera un résultat surnaturel ;-)

Il est possible que dans ce cas tu ne puisses plus rien récupérer (sauf avec un dd où tu précises le nombre et la taille des blocs).


Poste le Tuesday 22 June 2004 15:00:45
Répondre     Citer    
Re: rsync ? qu'est-ce que c'est ?
Envoyé par: deb



>Pour dd, il copie tout de chez tout (y compris la table des partitions).
>Si les disques ne sont pas de la même taille, ca fera un résultat surnaturel

aucun risque, ce sont 2 DD seagate identiques

Poste le Tuesday 22 June 2004 15:11:04
Répondre     Citer    
Re: rsync ? qu'est-ce que c'est ?
Envoyé par: deb



....

mais merci pour la précision, je n'aurai pas fait gaffe !!

Poste le Tuesday 22 June 2004 15:12:07
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
rsync ? qu'est-ce que c'est ?
Un problème avec une commande du shell ? Comment utiliser la crontab ? Vous avez des soucis pour la gestion réseau sous Linux ? Pour vous la gestion des utilisateurs/groupes est du chinois ? Etc... Posez donc vos questions ici.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons