Outils pour utilisateurs

Outils du site


informatique:rsync

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
informatique:rsync [14/03/2021 10:30]
cyrille
informatique:rsync [12/09/2021 09:55] (Version actuelle)
cyrille [Dans un script] Parallelizing rsync
Ligne 94: Ligne 94:
 gzip $LOG_FILE gzip $LOG_FILE
  
 +</code>
 +
 +==== Parallelizing rsync ====
 +
 +Quand il y a beaucoup de dossiers et fichiers on peut lancer plusieurs ''rsync'' simultanément.
 +
 +Le script de https://mjanja.ch/2014/07/parallelizing-rsync/ où l'on trouvera les explications détaillées.
 +
 +<code bash>
 +#!/usr/bin/env bash
 +# borrowed / adapted from: https://wiki.ncsa.illinois.edu/display/~wglick/Parallel+Rsync
 +
 +# RSYNC SETUP
 +RSYNC_PROG=/usr/bin/rsync
 +# note the important use of --relative to use relative paths so we don't have to specify the exact path on dest
 +RSYNC_OPTS="-aAXv --numeric-ids --progress --human-readable --delete --exclude=.glusterfs --relative"
 +export RSYNC_RSH="ssh -T -c arcfour -o Compression=no -x"
 +
 +# ENV SETUP
 +SRCDIR=/path/to/good/brick
 +DESTDIR=/path/to/bad/brick
 +# Recommend to match # of CPUs
 +THREADS=4
 +BAD_NODE=server1
 +
 +cd $SRCDIR
 +
 +# COPY
 +# note the combination of -print0 and -0!
 +find . -mindepth 1 -maxdepth 1 -print0 | \
 +    xargs -0 -n1 -P$THREADS -I% \
 +        $RSYNC_PROG $RSYNC_OPTS "%" $BAD_NODE:$DESTDIR
 </code> </code>
  
informatique/rsync.txt · Dernière modification: 12/09/2021 09:55 de cyrille