Outils pour utilisateurs

Outils du site


linux:rsync (lu 30582 fois)

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Dernière révision Les deux révisions suivantes
linux:rsync [25-02-2012 22:39]
edmc73 Page moved from linux:edmc73:linux:edmc73:rsync to edmc73:linux:rsync
linux:rsync [12-04-2016 15:34]
edmc73
Ligne 1: Ligne 1:
-===== rsync =====+====== rsync ======
  
-==== Serveur ====+===== Usage courant ===== 
 + 
 +Pour copier simplement des fichiers d'un serveur à l'autre, vous pouvez utiliser **rsync** qui est plus rapide que **scp** et qui en plus permet de préserver les informations de propriétaire des fichiers. 
 + 
 +Pour copier un fichier ou dossier  
 + 
 +  rsync -avzP [SOURCE] [DESTINATION] 
 +  rsync -a /home/users toto@serveur:/sauvegarde/
 +  rsync -avP tata@serveur:/var/archives/mysql.tar.gz /var/archive/
 + 
 +  * ''-a'' est le mode archive qui remplace les options ''-rlptgoD'' recursive / copie liens symboliques / copie les permissions / copie la date et heure / copie le groupe / copie le propriétaire / copie les fichiers spéciaux 
 +  * ''-v'' est le mode verbeux  
 +  * ''-z'' permet la compression pour utiliser moins de bande passante 
 +  * ''-P'' permet d'afficher la progression de transfert 
 + 
 +Ici seul l'option ''-a'' est importante. 
 + 
 +Si votre source contient des liens physiques (hard link), alors ajoutez l'option ''-H'' 
 + 
 +Si votre serveur de destination a un port ssh spécifique (ex: 2222) 
 +  rsync -avP -e "ssh -p 2222" user@serveur:/path/to/files/ /local/path/ 
 + 
 +===== Sous Windows ===== 
 + 
 +Télécharger **cwRsync** => https://www.itefix.net/cwrsync# 
 + 
 +Parametrer les variables d'environnement, lancer dans un terminale le script cwrsync.cmd 
 + 
 +  c:\Program Files\cwRsync\cwrsync.cmd 
 + 
 +Comme **rsync** est un programme unix à la base, on ne peut pas spécifier un chemin avec c:\ car les caractères '':'' et ''\'' seront interprétés pour autre chose. 
 + 
 +Pour accèder au lecteur C:, il faut écrire ''/cygdrive/c'' et remplacer les back slash par des slashs 
 + 
 +Exemple: 
 +  rsync -avi /cygdrive/c/work/ /cygdrive/d/work/doc/ 
 + 
 +===== Serveur =====
  
 Fichier de config de base à la con vite fait mal fait... Fichier de config de base à la con vite fait mal fait...
Ligne 21: Ligne 58:
  
  
-==== Client ====+===== Client =====
  
 Ma commande sur la machine client pour sauvegarder Ma commande sur la machine client pour sauvegarder
Ligne 43: Ligne 80:
      
  
-==== Message d'erreur ====+===== Message d'erreur =====
  
   rsync: failed to set times on "/." (in backup): Operation not permitted (1)   rsync: failed to set times on "/." (in backup): Operation not permitted (1)
Ligne 49: Ligne 86:
 Pour résoudre ce problème, j'ai simplement fait un  Pour résoudre ce problème, j'ai simplement fait un 
   chown nobody.nogroup repertoire_de_sauvegarde   chown nobody.nogroup repertoire_de_sauvegarde
-  + 
 +===== Déplacement de gros volume avant un rsync ===== 
 + 
 +Initialement pour synchroniser on lance la commande 
 +  rsync -a dossier/ serveur:dossier/ 
 + 
 +Puis un jour on veut déplacer nos données sur la source et on synchronise 
 +  mv dossier/fichierA dossier/fichierB 
 +  rsync -a dossier/ serveur:dossier/ 
 +Et là c'est le drame. Il retransfère le fichierB. 
 + 
 +L'astuce c'est d'utiliser l'équivalence entre ''mv a b'' et ''ln a b; rm a'', mais on va rajouter un rsync entre les deux. 
 + 
 +  cp -al dossier/fichierA dossier/fichierB 
 +  rsync -aH dossier/ serveur:dossier/ 
 +  rm dossier/fichierA 
 +  rsync -aH --delete dossier/ serveur:dossier/ 
 + 
 +J'utilise ''cp -al'' et non ''ln'', car ça permet de conserver les permissions et de faire le machin recursivement pour un répertoire si c'est un répertoire qui est bougé. 
 + 
 +Et comme ça, ça passe très bien, il détecte que fichierA et fichierB sont des hard link, il crée fichierB comme un hard link sur fichierA dans la destination, et à l'étape suivante il supprime fichierA. 
 + 
 +===== Performance ===== 
 + 
 +https://icesquare.com/wordpress/how-to-improve-rsync-performance/ 
 + 
 +rsync est plus performant lorsque l'on utilise le daemon rsyncd
  
linux/rsync.txt · Dernière modification: 05-01-2021 15:04 de edmc73