zion - rsync
Nom
rsync - une alternative rapide et flexible à rcp
Résumé
rsync [OPTION]&.&.&. SRC [SRC]&.&.&. [UTIL@]HOTE:DEST
rsync [OPTION]&.&.&. [UTIL@]HOTE:SRC [DEST]
rsync [OPTION]&.&.&. SRC [SRC]&.&.&. DEST
rsync [OPTION]&.&.&. [UTIL@]HOTE::SRC [DEST]
rsync [OPTION]&.&.&. SRC [SRC]&.&.&. [UTIL@]HOTE::DEST
rsync [OPTION]&.&.&. rsync://[UTIL@]HOTE[:PORT]/SRC [DEST]
rsync [OPTION]&.&.&. SRC [SRC]&.&.&. rsync://[UTIL@]HOTE[:PORT]/DEST
Description
rsync est un programme très similaire à rcp, mais possède bien plus d'options et utilise le protocole de mise à jour à distance rsync afin d'accélérer significativement le transfert de fichiers lorsque le fichier de destination existe déjà&.
Le protocole de mise à jour à distance rsync permet à rsync de ne transférer que la différence entre deux jeux de fichiers à travers le lien de réseau, en utilisant un algorithme efficace de recherche de somme de contrôle qui est décrit dans le document technique fourni avec ce paquetage&.
Quelques possibilités supplémentaires offertes par rsync :
o
possibilité de copier des liens, périphériques, propriétaires, groupes et permissions |
o
des options exclut et exclut-depuis similaires à GNU tar |
o
un mode d'exclusion CVS pour ignorer les mêmes fichiers que CVS |
o
peut utiliser n'importe quel shell (interpréteur de commandes), y compris rsh et ssh |
o
ne nécessite pas de privilèges root |
o
pipelining des transferts de fichiers pour minimiser les coûts de latence |
o
possibilité d'utilisation de démons rsync anonymes ou avec authentification (idéal pour le miroitage) |
GÉnÉral
Rsync copie des fichiers depuis ou vers un hôte distant, ou localement sur l'hôte actuel (la copie de fichiers entre deux hôtes distants n'est pas prise en charge)&.
Il y a deux manières pour rsync de contacter le système distant : en utilisant un programme de shell distant comme transport (tel que ssh ou rsh), ou en contactant un démon rsync directement par TCP&. Le transport par shell distant est utilisé à chaque fois que le chemin source ou destination contient un séparateur «:» après la spécification de l'hôte&. Le contact direct avec un démon rsync est utilisé lorsque le chemin source ou destination contient un séparateur «::» après la spécification de l'hôte, OU lorsqu'une URL rsync:// est spécifiée (voir aussi la section «UTILISER LES FONCTIONNALITÉS D'UN DÉMON RSYNC VIA UNE CONNEXION SHELL DISTANT» pour une exception à cette dernière règle)&.
Un cas spécial : si la source distante est spécifiée, mais pas la destination, les fichiers distants sont listés avec un affichage similaire à «ls -l»&.
Intuitivement, si ni la source ni la destination ne spécifient d'hôte distant, la copie est faite en local (voir aussi l'option --list-only)&.
Mise en place
Consultez le ficher README pour les instructions d'installation&.
Une fois installé vous pouvez utiliser rsync vers toute machine à laquelle vous pouvez accéder via un shell distant (ainsi que celles auxquelles vous pouvez accéder via le protocole rsync). Pour les transferts, le rsync moderne utilise ssh, cependant il peut avoir était configuré pour utiliser par défaut un shell distant différent, tel que rsh ou remsh&.
Vous pouvez aussi spécifier un autre shell quelconque, soit en utilisant l'option de la ligne de commande -e, ou en utilisant la variable d'environnement RSYNC_RSH&.
Une alternative couramment utilisée et offrant un degré de sécurité élevé est ssh&.
Notez que rsync doit être installé sur la machine locale ainsi que sur la machine de destination&.
Utilisation
rsync s'utilise de la même façon que rcp&. Vous devez spécifier une source et une destination, l'une des deux pouvant être distante&.
Le meilleur moyen d'expliquer la syntaxe est peut être avec quelques exemples :
f(CWrsync -t *&.c foo:src/ |
Ceci transfère tous les fichiers correspondant au motif *&.c du répertoire courant vers le répertoire src sur la machine foo&. Si un fichier existe déjà sur le système distant, alors le protocole de mise à jour à distance rsync est utilisé pour mettre à jour le fichier en envoyant uniquement les différences&. Consultez la documentation technique pour plus de détails&.
f(CWrsync -avz foo:src/bar /data/tmp |
Ceci transfère récursivement tous les fichiers du répertoire src/bar de la machine foo dans le répertoire /data/tmp/bar de la machine locale&. Les fichiers sont transférés en mode «archive», ce qui assure la préservation des liens symboliques, périphériques, attributs, permissions, propriétés, etc lors du transfert&. De plus les donnés transférées seront compressées.
f(CWrsync -avz foo:src/bar/ /data/tmp |
Une barre oblique à la fin du chemin source modifie ce comportement pour transférer tous les fichiers du répertoire src/bar de la machine foo dans /data/tmp/&. Une barre oblique à la fin d'un chemin source signifie «copie le contenu de ce répertoire»&. Sans la barre oblique à la fin cela signifie «copie le répertoire»&. Néanmoins, dans les deux cas, les attributs du répertoire sont transférés au répertoire sur la machine destination. Autrement dit, chacune de ces deux commandes copie les fichiers de la même manière, y compris les attributs de /dest/foo :
f(CWrsync -av /src/foo /dest f(CWrsync -av /src/foo/ /dest/foo |
Notez également qu'une barre oblique n'est pas nécessaire si vous spécifiez le répertoire par défaut d'un hôte ou d'un module&. Par exemple, ces deux lignes copient le contenu du répertoire distant vers «/dest» :
f(CWrsync -av hote: /dest f(CWrsync -av hote::module /dest |
Vous pouvez aussi utiliser rsync en mode local uniquement, lorsque ni la source ni la destination n'ont de «:» dans leur nom&. Dans ce cas rsync fonctionne comme une commande performante de copie&.
f(CWrsync unhote&.mondomaine&.com:: |
Ceci liste tous les modules rsync anonymes, disponibles sur l'hôte unhote&.mondomaine&.com&. (Consultez la section suivante pour plus de détails&.)
Utilisation avancÉe
La syntaxe pour récupérer plusieurs fichiers depuis un hôte distant requiert l'utilisation d'espaces protégées dans SRC&. Quelques exemples :
f(CWrsync hote::&'nommod/rep1/fichier1 nommod/rep2/fichier2&' /dest |
Ceci copie fichier1 et fichier2 vers /dest depuis un démon rsync. Chacun des arguments additionnels doit inclure le même préfixe « nommod» que le premier et doit être précédé d'un espace&. Toutes les autres espaces sont considérées comme faisant partie d'un nom de fichier.
f(CWrsync -av hote:&'rep1/fichier1 rep2/fichier2&' /dest |
Ceci copie fichier1 et fichier2 vers /dest à l'aide d'un shell distant&. La coupure des mots est faite par le shell distant, par conséquent si cela ne fonctionne pas c'est que le shell n'est pas configuré pour couper les arguments sur les caractères blancs (configuration très rare, mais pas impossible)&. Si vous avez besoin de transférer un fichier dont le nom contient des caractères blancs, il est nécessaire ou bien de protéger ces caractères de manière à ce que le shell distant les interprète correctement, ou bien d'utiliser des méta-caractères à la place des blancs&. Voici deux exemples :
f(CWrsync -av hote:&'nome dee fichiere avece espaces&' /dest f(CWrsync -av hote:nom?de?fichier?avec?espaces /dest |
Ce second exemple suppose que votre shell passe les méta-caractères non développés&. S'il affiche une erreur du type «no match» ou «pas de correspondance», mettez le nom entre guillemets&.
Connexion À un dÉmon rsync
Il est possible également d'utiliser rsync sans utiliser rsh ou ssh comme agents de transport&. Dans ce cas, vous vous connecterez directement à un démon rsync distant, en général, en utilisant le port TCP 873&. (Bien sûr, cela suppose qu'un démon soit en cours d'exécution sur le système distant ; pour plus d'information à ce sujet, référez-vous à la section DÉMARRER UN DÉMON RSYNC QUI ACCEPTE LES CONNEXIONS ci-dessus&.)
Utiliser rsync comme cela est identique à une utilisation via un shell distant excepté que :
o
vous utilisez soit un double deux-points «::» au lieu de l'unique deux-points pour séparer le nom d'hôte du chemin, soit une URL rsync://&. |
o
le premier mot après les «::» est le nom d'un module&. |
o
le démon distant peut afficher un message du jour lorsque vous vous connectez&. |
o
si vous ne spécifiez pas de chemin sur le démon distant, alors la liste des chemins accessibles sur le démon sera affichée&. |
o
si vous ne spécifiez pas de destination locale, alors une liste des fichiers spécifiés sur le démon distant est affichée&. |
Un exemple qui copie tous les fichiers vers un module distant nommé «src» :
.nf rsync -av hote::src /dest .fi
Certains modules sur le démon distant peuvent nécessiter une authentification&. Si c'est le cas, un mot de passe vous sera demandé lors de votre connexion&. Vous pouvez éviter la demande de mot de passe en fixant la variable d'environnement RSYNC_PASSWORD à la valeur du mot de passe que vous voulez utiliser ou en utilisant l'option --password-file&. Ceci peut être utile en cas d'utilisation de rsync dans des scripts&.
AVERTISSEMENT : sur certains systèmes, les variables d'environnement sont visibles par tous les utilisateurs&. Sur ces systèmes, l'utilisation de --password-file est recommandée&.
Vous pouvez établir la connexion via un proxy web en donnant à la variable d'environnement RSYNC_PROXY une valeur nomdhote:port qui pointe vers votre proxy web&. Notez que votre proxy web doit permettre l'utilisation du port 873&.
Utiliser les fonctionnalitÉs dun dÉmon rsync via une connexion shell distante
Il peut parfois être utile d'utiliser différentes fonctionnalités d'un démon rsync (telles que les modules nommés) sans pour autant autoriser de nouvelle socket de connexion à un système (autre que ce qui est déjà requis pour permettre un accès shell distant)&. Rsync supporte les connexions à un hôte en utilisant un shell distant puis en lançant un serveur «démon» à usage unique qui lit son fichier de configuration dans le répertoire personnel de l'utilisateur distant&. Cela peut être utile si vous souhaitez crypter les données de transfert de style démon ; cependant, comme le démon vient d'être démarré par l'utilisateur distant, il se peut que vous ne puissiez pas utiliser les fonctionnalités telles que le chroot ou le changement d'uid par le démon&. (Une autre manière de crypter le transfert avec un démon : utiliser ssh pour faire un tunnel vers un port local de la machine distante et ensuite configurer un démon rsync normal sur l'hôte distant qui n'accepte que les connexions depuis «localhost»&.)
Du point de vue de l'utilisateur, un transfert démon via une connexion shell distant utilise pratiquement la même syntaxe de ligne de commande qu'un transfert avec un démon rsync, excepté que vous devez explicitement spécifier le programme de shell distant sur la ligne de commande via l'option --rsh=COMMANDE&. (Spécifier la variable d'environnement RSYNC_RSH n'activera pas cette fonctionnalité&.) Par exemple :
.nf rsync -av --rsh=ssh hôte::module /dest .fi
Si vous devez spécifier un utilisateur shell distant différent, n'oubliez pas que le préfixe util@ avant l'hôte spécifie la valeur de l'utilisateur rsync (pour un module qui requière une authentification basée sur l'utilisateur)&. Cela signifie que vous devez passer l'option «-l util» à ssh lorsque vous spécifiez le shell distant :
.nf rsync -av -e "ssh -l util-ssh" util-rsync@hôte::module /dest .fi
Le nom «util-ssh» sera utilisé au niveau de ssh, tandis que le nom «util-rsync» sera utilisé pour l'accès au module&.
DÉmarrer un dÉmon rsync qui accepte les connexions
Afin de se connecter à un démon rsync, le système distant doit avoir un démon déjà en cours d'exécution (ou il faut avoir configuré un service comme inetd pour lancer un démon rsync pour les connexions entrantes sur un port particulier)&. Pour les informations complètes sur la manière de démarrer un démon qui prend en charge les sockets de connexions entrantes, voir la page de man rsyncd&.conf(5) -- ceci est le fichier de configuration du démon, elle contient tout les détails sur la manière de lancer le démon (y compris les configurations autonome et inetd)&.
Si vous utilisez un transport par shell distant pour le transfert, il n'est pas nécessaire de démarrer manuellement un démon rsync&.
Exemples
Voici quelques exemples de l'utilisation que je fais de rsync&.
Pour sauvegarder le répertoire personnel de mon épouse, qui est constitué de gros fichiers MS Word et de répertoires de courrier électronique, j'utilise un job cron qui exécute
f(CWrsync -Cavz &. arvidsjaur:backup |
chaque nuit à travers un lien PPP vers un répertoire de duplication sur ma machine «arvidsjaur»&.
Pour synchroniser mon arborescence du code source de samba, j'utilise les cibles de Makefile suivantes :
.nf get: rsync -avuzb --exclude &'*~&' samba:samba/ &. put: rsync -Cavuzb &. samba:samba/ sync: get put .fi
ceci me permet de synchroniser avec un répertoire CVS à l'autre bout du lien&. J'effectue ensuite des opérations CVS sur la machine distante, ce qui sauve beaucoup de temps car le protocole CVS distant n'est pas très efficace&.
Je miroite un répertoire entre mon «ancien» et «nouveau» site ftp avec la command e :
f(CWrsync -az -e ssh --delete ~ftp/pub/samba nimbus:"~ftp/pub/tridge"
Ceci est lancé depuis cron plusieurs fois par jour&.
Options
Voici un court résumé des options disponibles dans rsync&. Veuillez vous référer à la description détaillée ci dessous pour une description complète&. .nf -v, --verbose plus loquace -q, --quiet moins loquace -c, --checksum utilise la somme de contrôle, pas la date ni la taille -a, --archive mode archivage; identique à -rlptgoD (pas -H) -r, --recursive visite récursive des répertoires -R, --relative utilise des noms de chemins relatifs --no-relative désactive --relative --no-implied-dirs ne transmet pas les répertoires implicites de -R -b, --backup effectue des sauvegardes (cf. --suffix et --backup-dir) --backup-dir=RÉP effectue des sauvegardes dans le répertoire RÉP --suffix=SUFFIXE suffixe de sauvegarde («~» par défaut sauf si --backup-dir) -u, --update saute les fichiers plus récents chez le destinataire --inplace mise à jour de fichiers sur place -d, --dirs ne transfert pas les répertoires récursivement -l, --links copie les liens symboliques comme liens symboliques -L, --copy-links transforme les liens symboliques par les fichiers référencés --copy-unsafe-links ne transforme que les liens «non-sûrs» --safe-links ignore les liens extérieurs à l'arborescence -H, --hard-links préserve les liens matériels -K, --keep-dirlinks traite les liens de répertoire comme des répertoires -p, --perms préserve les permissions -o, --owner préserve le propriétaire (root uniquement) -g, --group préserve le groupe -D, --devices préserve les périphériques (root uniquement) -t, --times préserve les dates -O, --omit-dir-times omet les répertoires lors de la préservation de date -S, --sparse traite les fichiers à trous efficacement -n, --dry-run montre ce qui aurait été transféré -W, --whole-file copie les fichiers entiers (jamais l'algorithme rsync) --no-whole-file toujours utiliser l'algorithme rsync incrémental -x, --one-file-system ne traverse pas les limites du système de fichiers -B, --block-size=TAILLE force la taille de bloc de la somme de contrôle -e, --rsh=COMMANDE spécifie un shell distant --rsync-path=PROGRAMME spécifie le nom de l'exécutable rsync chez le récepteur --existing met à jour uniquement les fichiers qui existent déjà --ignore-existing ignore les fichiers qui existent déjà --remove-sent-files les fichiers envoyés sont supprimés de chez l'émetteur --del synonyme pour --delete-during --delete efface les fichiers qui n'existent pas chez l'émetteur --delete-before efface avant le transfert (par défaut) --delete-during efface au cours du transfert, pas avant --delete-after efface après transfert, pas avant --delete-excluded efface également les fichiers exclus côté réception --ignore-errors efface même s'il y a eu des erreurs E/S --force force la suppression de répertoires même non-vides --max-delete=NUM n'efface pas plus de NUM fichiers --max-size=TAILLE ne transfert le fichiers plus gros que TAILLE --partial conserve les fichiers partiellement transférés --partial-dir=RÉP place les fichiers partiellement transférés dans RÉP --delay-updates ne remplace les fichiers mis à jour qu'à la fin --numeric-ids ne remplace pas les uid/gid par des noms d'utilisateur/groupe --timeout=DURÉE fixe la durée d'attente E/S en secondes -I, --ignore-times ne saute pas les fichiers similaires par la taille et la date --size-only saute les fichiers qui sont similaires par la date --modify-window=NUM compare les dates avec une précision moins fine -T --temp-dir=RÉP crée des fichiers temporaires dans le répertoire RÉP -y, --fuzzy se base sur des fichiers similaires si le fichier manque --compare-dest=RÉP compare les fichiers transmis également à RÉP --copy-dest=RÉP &.&.&.et inclut les fichiers non modifiés --link-dest=RÉP crée un lien matériel vers les fichiers de RÉP si non modifiés -z, --compress transfert en compressant les données -C, --cvs-exclude ignore automatiquement des fichiers, comme le ferait CVS -f, --filter=RÈGLE ajoute une règle de filtrage de fichier -F identique à --filter=&'dir-merge /&.rsync-filter&' deuxième fois : --filter=&'- &.rsync-filter&' --exclude=MOTIF exclut les fichiers correspondant au MOTIF --exclude-from=FICHIER lit des motifs d'exclusion depuis FICHIER --include=MOTIF n'exclut pas les fichiers correspondant au MOTIF --include-from=FICHIER lit des motifs d'inclusion depuis FICHIER --files-from=FICHIER lit des fichiers à transférer depuis FICHIER -0, --from0 tous les fichiers des *-from/filtres sont séparés par 0 --address=ADRESSE se lie à l'adresse pour la connexion sortante vers le démon --port=PORT spécifie un autre numéro de port rsyncd --blocking-io utilise des E/S bloquantes pour le shell distant --no-blocking-io désactive les E/S bloquantes --stats affiche quelques statistiques de transfert de fichiers --progress montre l'avancement pendant le transfert -P équivalent à --partial --progress -i, --itemize-changes affiche un résumé des changements pour chaque mise à jour --log-format=FORMAT affiche les noms fichiers selon le format spécifié --password-file=FICHIER lit le mot de passe depuis FICHIER --list-only liste les fichiers au lieu de les copier --bwlimit=KBPS limite la bande passante E/S, En ko par seconde --write-batch=FICHIER enregistre les modifications dans FICHIER --only-write-batch=FICHIER comme --write-batch sans mettre à jour la destination --read-batch=FICHIER exécute le fichier de modification FICHIER --protocol=NUM force l'utilisation d'un protocole rsync version NUM --checksum-seed=NUM spécifie la graine pour la somme de contrôle -4, --ipv4 préfère IPv4 -6, --ipv6 préfère IPv6 --version affiche le numéro de version -h, --help affiche cet écran d'aide .fi
Rsync peut également être exécuté comme démon, auquel cas il accepte les options suivantes : .nf --daemon exécute rsync en tant que démon --no-detach ne se détache pas du parent --address=ADRESSE se lie à l'adresse spécifiée --config=FICHIER spécifie un autre fichier rsyncd&.conf --bwlimit=KBPS limite la bande passante I/O, ko par seconde --port=PORT spécifie un autre numéro de port rsyncd -v, --verbose plus loquace -4, --ipv4 préfère IPv4 -6, --ipv6 préfère IPv6 -h, --help affiche cet écran d'aide .fi
Options
rsync utilise le paquetage «longopt» de GNU&. De nombreuses options de la ligne de commande ont deux variantes, une courte et une longue&. Celles ci sont exposées ci dessous, séparées par une virgule&. Certaines options n'existent que dans la variante longue&. Le «=» pour les options qui prennent un paramètre est optionnel ; des blancs peuvent être utilisés à la place&.
"-h, --help"
Affiche une page d'aide décrivant succinctement les options disponibles dans rsync&. |
[/col][/row][/table]
"--version"
Affiche le numéro de version de rsync et quitte&. |
[/col][/row][/table]
"-v, --verbose"
Cette option augmente la quantité d'information que vous obtenez lors du transfert&. Par défaut, rsync travaille silencieusement&. Avec un -v, rsync vous indique quels sont les fichiers actuellement transmis et affiche un bref résumé à la fin&. Avec deux drapeaux -v, rsync vous informe des fichiers ignorés et affiche un résumé avec légèrement plus d'information à la fin&. Plus de deux drapeaux -v ne devraient être utilisés que pour déboguer rsync&. |
Remarquez que les noms des fichiers transmis qui sont affichés le sont selon la valeur par défaut de --log-format qui est «L», ce qui ne présente que le nom du fichier et, si c'est un lien, vers où il pointe&. Avec un seul -v, il ne sera pas fait mention si un fichier a eu ses attributs modifiés&. Si vous demandez une liste des attributs modifiés (soit avec --itemize-changes ou bien en ajoutant «%i» à --log-format), alors l'affichage fera mention de tous les attributs modifiés pour une quelconque raison&. Référez-vous à l'option --log-format pour plus d'information. |
[/col][/row][/table]
"-q, --quiet"
Cette option diminue la quantité d'information affichée lors du transfert, les messages du serveur distant notamment sont supprimés&. Cette option est utile lorsque vous appelez rsync à partir de cron&. |
[/col][/row][/table]
"-I, --ignore-times"
Normalement rsync ignore tous les fichiers qui ont la même taille et ont une horodate identique&. Cette option arrête ce comportement&. |
[/col][/row][/table]
"--size-only"
Normalement rsync ignore tous les fichiers qui ont la même taille et une horodate identique&. Avec l'option --size-only, les fichiers seront ignorés s'ils ont la même taille, indépendamment de l'horodate&. Ceci est utile lorsque l'on commence à se servir de rsync après avoir utilisé un autre outil de miroitage qui peut ne pas préserver les horodates exactement&. |
[/col][/row][/table]
"--modify-window"
Lors de la comparaison de deux horodates, rsync les considère égales si elles ne diffèrent pas plus que la fenêtre temporelle&. Celle-ci est normalement nulle (c'est-à-dire une comparaison exacte), mais cela peut être utile de la fixer à une valeur plus grande dans certaines situations&. En particulier, lors de transferts impliquant un système de fichiers FAT (qui représente les dates avec une résolution de deux secondes), --modify-window=1 est alors utile (permettant aux horodates d'avoir jusqu'à une seconde de différence)&. |
[/col][/row][/table]
"-c, --checksum"
Ceci force l'expéditeur à faire une somme de contrôle 128-bit MD4 de tous les fichiers avant le transfert&. La somme de contrôle est ensuite explicitement vérifiée à la réception et tous les fichiers du même nom qui existent déjà et ont la même somme de contrôle et la même taille sur le système de réception sont ignorés&. Cette option peut être assez lente&. |
[/col][/row][/table]
"-a, --archive"
Ceci est équivalent à -rlptgoD&. C'est un moyen rapide de dire que vous voulez la récursion et tout préserver pratiquement tout&. La seule exception est que si --files-from a été spécifié alors -r n'est pas utilisée. |
Notez toutefois que -a ne préserve pas les liens matériels, parce que trouver les fichiers multiplement liés est coûteux en ressources. Vous devez spécifier séparément -H&. |
[/col][/row][/table]
"-r, --recursive"
Ceci dit à rsync de copier les répertoires récursivement&. Référez-vous également à --dirs (-d)&. |
[/col][/row][/table]
"-R, --relative"
Utilise des chemins relatifs&. Ceci signifie que les chemins complets spécifiés sur la ligne de commande sont envoyés au serveur plutôt que juste la dernière partie des noms de fichiers&. Ceci est particulièrement utile lorsque vous voulez envoyer plusieurs répertoires différents en même temps&. Par exemple, si vous avez utilisé la commande |
|
alors ceci aurait créé un fichier appelé foo&.c dans /tmp/ sur la machine distante&. Si vous aviez utilisé plutôt |
|
alors un fichier appelé /tmp/foo/bar/foo&.c aurait été créé sur la machine distante&. Le nom de chemin complet est préservé&. Pour limiter la taille du chemin transmis, vous pouvez faire |
|
Cela va créer /tmp/bar/foo&.c sur la machine distante&. |
[/col][/row][/table]
"--no-relative"
Désactive l'option --relative. Cela n'est nécessaire que si vous souhaitez utiliser --files-from sans --relative qui est automatiquement activée. |
[/col][/row][/table]
"--no-implied-dirs"
Lorsque cette option est combinée à --relative, les répertoires implicites des chemins ne sont pas dupliqués lors du transfert&. Outre le fait que le transfert est plus optimal, cela permet aussi d'avoir des liens symboliques d'un côté sans que ce ne soit le cas de l'autre coté&. Par exemple, si vous transférez le fichier "/path/foo/file" avec -R, par défaut rsync s'assurera que "/path" et "/path/foo" chez le destinataire correspondent exactement aux répertoires ou au liens sur la source&. En utilisant --no-implied-dirs ces deux répertoires implicites seront omis, c'est-à-dire que si "/path" est un répertoire réel sur une machine et un lien symbolique sur l'autre, rsync ne le modifiera pas. |
[/col][/row][/table]
"-b, --backup"
Avec cette option les fichiers de destination préexistants sont renommés lors du transfert de chaque fichier&. Vous pouvez contrôler le répertoire de sauvegarde et le suffixe de sauvegarde en utilisant respectivement les options --backup-dir et --suffix&. Remarquez que si vous ne spécifiez pas l'option --backup-dir alors l'option --omit-dir-times sera activée. |
[/col][/row][/table]
"--backup-dir=REP"
En combinaison avec l'option --backup, ceci dit à rsync de garder toutes les sauvegardes dans le répertoire spécifié&. Ceci est très utile pour des sauvegardes incrémentales&. Vous pouvez spécifier en plus un suffixe de sauvegarde en utilisant l'option --suffix (autrement, les fichiers sont sauvegardés dans le répertoire spécifié avec leur noms d'origine)&. |
[/col][/row][/table]
"--suffix=SUFFIXE"
Cette option permet de modifier le suffixe de sauvegarde utilisé par l'option -b&. Par défaut c'est un «~» à moins que --backup-dir n'ait été spécifiée, dans quel cas le suffixe par défaut est vide&. |
[/col][/row][/table]
"-u, --update"
Ceci force rsync à ignorer tous les fichiers pour lesquels le fichier de destination existe déjà et avec une date postérieure à celle du fichier de source&. (Si un fichier destination existant a une date égale à celle du fichier source, il ne sera mis à jour que si les tailles diffèrent&.) |
Dans l'implémentation courante de --update, une différence de format du fichier entre le récepteur et l'émetteur est toujours considérée comme suffisamment importante pour le mettre à jour, quelque soient les dates des fichiers&. Autrement dit, si la source est un répertoire ou un lien symbolique tandis que la destination possède un fichier, alors un transfert sera lancé, peu importe les dates&. Ce comportement est susceptible d'être modifié dans le futur (si vous avez un point de vue, vous pouvez en faire part, en anglais, à la liste de diffusion)&. |
[/col][/row][/table]
"--inplace"
Cela change le comportement par défaut de rsync qui crée une nouvelle copie du fichier puis le déplace vers son véritable nom&. Avec cette option rsync écrira directement par dessus le fichier, ce qui implique que l'algorithme de rsync ne pourra pas réduire la transmission réseau autant qu'il n'en est capable (étant donné qu'il ne tente pas encore de trier la correspondance de données)&. Une exception à cela est lorsque cette option est combinée à --backup, dans quel cas rsync sera suffisamment rusé pour utiliser le fichier de sauvegarde comme base pour le transfert&. |
Cette option est utile pour le transfert de fichier volumineux avec des changements regroupés ou des données ajoutées, ou alors sur les systèmes qui ont des performances limitées par les accès disques plutôt que réseaux&. |
Cette option implique --partial (puisque qu'un transfert interrompu n'efface pas le fichier), mais elle est incompatible avec --partial-dir et --delay-updates&. Avant la version 2&.6&.4 de rsync --inplace était également incompatible avec --compare-dest et --link-dest&. |
AVERTISSEMENT : Les données du fichier seront dans un état inconsistant le temps du transfert (et éventuellement après si le transfert a été interrompu), par conséquent cette option n'est pas recommandée pour la mise à jour de fichier en cours d'utilisation&. Notez également que rsync sera incapable de mettre à jour un fichier sur place s'il n'a pas d'accès en écriture pour l'utilisateur destinataire&. |
[/col][/row][/table]
"-d, --dirs"
Indique à l'émetteur d'inclure tous les répertoires rencontrés&. Contrairement à --recursive, le contenu des répertoires n'est pas copié à moins que le répertoire ait été explicitement spécifié sur la ligne de commande par «&.» ou par un nom suivi de «/» (par exemple «foo/»)&. Sans cette option ou --recursive, rsync omettra tous les répertoires rencontrés (en affichant un message indiquant l'omission)&. |
[/col][/row][/table]
"-l, --links"
Lorsque des liens symboliques sont rencontrés, ils sont recréés à la destination&. |
[/col][/row][/table]
"-L, --copy-links"
Lorsque des liens symboliques sont rencontrés, le fichier vers lequel ils pointent est copié plutôt que le lien symbolique&. Dans les anciennes versions de rsync, cette option avait pour effet de bord de forcer le coté récepteur à suivre les liens symboliques, tels que les liens symboliques vers des répertoires&. Dans les versions récentes de rsync, il est nécessaire de spécifier --keep-dirlinks (-K) pour obtenir cette fonctionnalité supplémentaire&. Il y a une exception lorsque le rsync du coté récepteur est trop vieux pour comprendre -K -- dans ce cas, l'option -L entraînera l'effet de bord comme dans les anciennes versions&. |
[/col][/row][/table]
"--copy-unsafe-links"
Ceci dit à rsync de copier le fichier référencé par les liens symboliques qui pointent en dehors de l'arborescence source&. Les liens symboliques absolus sont également traités comme des fichiers ordinaires, ainsi que les liens symboliques dans l'arborescence source elle même lorsque --relative est utilisée&. |
[/col][/row][/table]
"--safe-links"
Ceci indique à rsync d'ignorer tous les liens symboliques qui pointent vers l'extérieur de l'arborescence copiée&. Tous les liens symboliques absolus sont ignorés également&. Utiliser cette option en même temps que --relative peut donner des résultats inattendus&. |
[/col][/row][/table]
"-H, --hard-links"
Ceci indique à rsync de recréer les liens matériels sur le système distant à l'identique du système local&. Sans cette option, les liens matériels sont traités comme des fichiers réguliers&. |
Notez que rsync ne peut détecter les liens matériels que si les deux parties du lien sont dans la liste de fichiers envoyés&. |
Cette option peut être assez lente, ne l'utilisez que si vous en avez vraiment besoin&. |
[/col][/row][/table]
"-K, --keep-dirlinks"
Coté réception, si un lien symbolique pointe vers un répertoire, il sera traité comme correspondant à un répertoire chez l'émetteur&. |
[/col][/row][/table]
"-W, --whole-file"
Avec cette option, l'algorithme rsync incrémental n'est pas utilisé ; au lieu de cela, le fichier entier est envoyé tel quel&. Le transfert peut être plus rapide grâce à cette option lorsque la bande passante entre les machines source et cible est plus grande que la bande passante vers le disque (en particulier lorsque le «disque» est en fait un système de fichiers sur réseau NFS). Cette option est utilisée par défaut lorsque la source et la cible sont sur la même machine. |
[/col][/row][/table]
"--no-whole-file"
Désactive --whole-file, utile lorsqu'elle est activée par défaut&. |
[/col][/row][/table]
"-p, --perms"
Cette option entraîne la mise à jour des permissions distantes pour qu'elles soient identiques aux permissions locales&. |
Sans cette option, tous les fichiers existants (y compris les fichiers mis à jour) gardent leur permissions actuelles, tandis que les nouveaux fichiers reçoivent des permissions basées sur les permissions du fichier source mais masquées par le masque utilisateur du récepteur (ce comportement est identique aux autres utilitaires de copie de fichier, tel que cp)&. |
[/col][/row][/table]
"-o, --owner"
Cette option dit à rsync de mettre le propriétaire du fichier de destination identique à celui du fichier source&. Sur la plupart des systèmes, uniquement le super-utilisateur peut fixer le propriétaire des fichiers&. Par défaut, la conservation est effectuée selon le nom mais lorsque cela ne fonctionne pas, rsync utilise comme alternative le numéro ID&. Référez-vous à l'option --numeric-ids pour plus de détail&. |
[/col][/row][/table]
"-g, --group"
Cette option dit à rsync de mettre le groupe du fichier de destination identique à celui du fichier source&. Si le programme récepteur n'est pas exécuté en tant que super-utilisateur, uniquement les groupes dont le récepteur est un membre seront préservés&. Par défaut, la conservation est effectuée selon le nom mais lorsque cela ne fonctionne pas, rsync utilise comme alternative le numéro ID&. Référez-vous à l'option --numeric-ids pour plus de détail&. |
[/col][/row][/table]
"-D, --devices"
Cette option entraîne le transfert d'informations sur les périphériques caractères et blocs vers le système distant pour recréer ces périphériques&. Cette option n'est disponible que pour le super-utilisateur&. |
[/col][/row][/table]
"-t, --times"
Ceci dit à rsync de transférer les dates de modifications avec les fichiers et de les mettre à jour sur le système distant&. Notez que si cette option n'est pas utilisée, l'optimisation qui consiste à exclure les fichiers qui n'ont pas été modifiés ne peut pas être efficace ; en d'autres termes, un -t ou -a absent va faire que le prochain transfert se ferra comme s'il utilisait -I, ce qui implique que tous les fichiers seront mis à jour (même si l'algorithme rsync rendra l'opération relativement efficace si les fichiers n'ont pas été modifiés, vous avez tout intérêt à utiliser -t)&. |
[/col][/row][/table]
"-O, --omit-dir-times"
Ceci indique à rsync d'omettre les répertoires lorsque les dates de modification sont préservées (cf. --times)&. Si les répertoires du destinataire sont partagés via NFS, il est recommandé d'utiliser -O&. Cette option est automatiquement sélectionnée si vous utilisez --backup sans --backup-dir&. |
[/col][/row][/table]
"-n, --dry-run"
Ceci dit à rsync de ne faire aucun transfert, mais de juste rapporter les actions qu'il aurait faites&. |
[/col][/row][/table]
"-S, --sparse"
Essaie de traiter les fichiers à trous efficacement, de sorte qu'ils prennent moins de place sur la destination&. [NDT : sparse file = fichier à trous] |
NOTE : N'utilisez pas cette option lorsque la destination est un système de fichiers «tmpfs» Solaris&. Il semble qu'il ne traite pas les déplacements au-dessus de zones vides et cela entraîne des corruptions de fichiers&. |
[/col][/row][/table]
"-x, --one-file-system"
Ceci dit à rsync de ne pas traverser les limites du système de fichiers lors d'un parcours récursif&. Ceci est utile pour transférer le contenu d'un système de fichiers exclusivement&. |
[/col][/row][/table]
"--existing"
Ceci dit à rsync de ne créer aucun nouveau fichier -- uniquement mettre à jour les fichiers qui existent déjà sur la destination&. |
[/col][/row][/table]
"--ignore-existing"
Ceci dit à rsync de ne pas mettre à jour les fichiers déjà existants chez le destinataire&. |
[/col][/row][/table]
"--remove-sent-files"
Ceci dit à rsync d'effacer de l'émetteur les fichiers ou les liens symboliques transmis créés ou mis à jour chez le destinataire&. Les répertoires ainsi que les périphériques ne sont jamais effacés, ni les fichiers et les liens symboliques dont les attributs sont changés&. |
[/col][/row][/table]
"--delete"
Ceci dit à rsync d'effacer tous les fichiers superflus côté réception (ceux qui ne sont pas du côté envoi); uniquement pour les répertoires synchronisés&. Vous devez explicitement demander à rsync de transmettre le contenu du répertoire (par ex : «dir» ou «dir/»), sans utiliser de méta-caractères pour indiquer le contenu du répertoire (par ex : «dir/*»)&. En effet, les méta-caractères sont interprétés par le shell, ce qui implique que rsync reçoit une requête pour transmettre une liste de fichiers et non pas un répertoire entier&. Les fichiers qui sont exclus du transfert ne seront pas effacés sauf si vous utilisez --delete-excluded ou que vous indiquez dans les règles de ne faire de correspondance que sur le côté émetteur (cf. les modificateurs d'inclusion/exclusion de la section RÈGLES DE FILTRE)&. |
Cette option n'a pas d'effet si le parcours récursif des répertoires n'est pas sélectionné&. |
Cette option peut être dangereuse si elle n'est pas utilisée correctement ! C'est une très bonne idée d'exécuter rsync avec l'option --dry-run (-n) pour voir quels seraient les fichiers effacés et s'assurer qu'aucun fichier important n'est listé&. |
Si le côté envoi détecte des erreurs d'entrée/sortie (E/S), alors l'effacement des fichiers côté destination est automatiquement désactivé&. Ceci prévient des échecs temporaires de système de fichiers (comme les erreurs NFS) du côté envoi causant une destruction massive de fichiers côté destination&. Vous pouvez passer outre ceci avec l'option --ignore-errors&. |
L'option --delete peut être combinée avec l'une des options --delete-QUAND ainsi qu'avec --delete-excluded&. Si aucune des options --delete-QUAND n'est spécifiée, actuellement, rsync choisira l'algorithme --delete-before&. Cependant, il se peut que les versions futures choisissent par défaut l'algorithme --delete-during&. Voir aussi --delete-after&. |
[/col][/row][/table]
"--delete-before"
Avec cette option la suppression des fichiers du côté récepteur est effectuée lorsque le transfert commence&. Ceci est l'option par défaut avec --delete ou --delete-excluded si aucune des options --delete-QUAND n'est spécifiée&. |
La suppression avant le transfert est utile si l'espace libre sur le système de fichiers est faible et que les fichiers superflus auraient empêché le transfert de se terminer correctement&. Cependant, cela introduit un délai avant le démarrage du transfert, ce qui peut causer une erreur de temporisation sur le transfert (si --timeout a été spécifiée)&. |
[/col][/row][/table]
"--delete-during, --del"
Avec cette option, la suppression des fichiers du côté récepteur est effectuée incrémentalement au cours du transfert&. Ceci est une méthode plus rapide que celles avant ou après le transfert, mais elle n'est supportée que depuis la version 2&.6&.4 de rsync&. Référez-vous à --delete (qui est sélectionnée implicitement) pour plus d'information&. |
[/col][/row][/table]
"--delete-after"
Avec cette option, la suppression des fichiers du côté récepteur est effectuée une fois le transfert terminé&. Ceci est utile si au cours du transfert vous envoyez de nouveaux fichiers de règle à fusionner par répertoire et que vous souhaitez que les exclusions qu'ils contiennent prennent effet avant la phase de suppression&. Référez-vous à --delete (qui est sélectionnée implicitement) pour plus d'information&. |
[/col][/row][/table]
"--delete-excluded"
En plus d'effacer les fichiers côté récepteur qui ne sont pas côté émetteur, ceci dit à rsync d'effacer également tous les fichiers côté réception qui sont exclus (voir --exclude)&. Référez-vous à la section RÈGLES DE FILTRE pour un moyen d'obtenir ce comportement individuellement à chaque exclusion du côté récepteur, et pour un moyen de protéger les fichiers de --delete-excluded&. Référez-vous à --delete (qui est sélectionnée implicitement) pour plus d'information&. |
[/col][/row][/table]
"--ignore-errors"
Dit à --delete de continuer et d'effacer les fichiers même lorsqu'il y a des erreurs E/S&. |
[/col][/row][/table]
"--force"
Cette option dit à rsync d'effacer les répertoires même s'ils ne sont pas vides lorsqu'ils sont remplacés par autre chose qu'un répertoire&. Ceci ne s'applique pas à l'option --delete car les suppressions sont faites en profondeur d'abord&. Requiert l'option --recursive (implicitement sélectionnée par -a) pour avoir un effet&. |
[/col][/row][/table]
"--max-delete=NUM"
Ceci dit à rsync de ne pas effacer plus de NUM fichiers ou répertoires (NUM doit être supérieur ou égal à un)&. Ceci est utile lorsque l'on miroite de très grandes arborescences pour prévenir des désastres&. |
[/col][/row][/table]
"--max-size=TAILLE"
Ceci dit à rsync de ne pas transférer de fichier dont la taille est supérieure à TAILLE&. La valeur TAILLE peut être suivie d'une lettre pour indiquer une unité (K, M ou G) et peut être une valeur fractionnelle (par ex : "--max-size=1&.5m")&. |
[/col][/row][/table]
"-B , --block-size=TAILLE"
Ceci contrôle la taille de bloc utilisée dans l'algorithme rsync&. Elle est normalement calculée à partir de la taille de chaque fichier à mettre à jour&. Reportez-vous à la documentation technique pour plus de détails&. |
[/col][/row][/table]
"-e, --rsh=COMMANDE"
Cette option vous permet de choisir un shell distant alternatif pour la communication entre les copies locales et distantes de rsync&. Par défaut, rsync va utiliser ssh, mais vous pouvez apprécier l'utilisation de rsh dans un réseau local&. |
Si cette option est utilisée en conjonction de [util@]hote::module/chemin, alors le shell distant COMMANDE sera utilisé pour lancer un démon rsync sur la machine hôte, et toutes les données seront transmises via la connexion à ce shell distant plutôt que directement via une connexion socket avec le démon rsync de l'hôte distant&. Reportez-vous à la section «UTILISER LES FONCTIONNALITÉS D'UN DÉMON RSYNC VIA UNE CONNEXION SHELL DISTANT» ci-dessus pour plus d'information&. |
Il est possible d'ajouter des arguments à COMMANDE, il suffit de faire en sorte que COMMANDE soit présentée comme un seul argument à rsync&. Par exemple : |
|
(Notez que les utilisateurs de ssh peuvent aussi personnaliser en fonction du site les options de connexion à l'aide du fichier &.ssh/config&.) |
Vous pouvez aussi choisir le shell distant en utilisant la variable d'environnement RSYNC_RSH, qui accepte les mêmes valeurs que -e&. |
Voir aussi l'option --blocking-io qui est affectée par cette option&. |
[/col][/row][/table]
"--rsync-path=PROGRAMME"
Utilisez ceci pour spécifier le programme à lancer sur la machine distante pour démarrer rsync&. Utile si ce chemin n'est pas dans le $PATH de votre shell distant (par ex : --rsync-path=/usr/local/bin/rsync)&. Notez que PROGRAMME est exécuté à l'aide du shell, par conséquent ce peut être n'importe quel programme, script ou suite de commande que vous souhaitez tant que l'entrée et la sortie standard que rsync utilise pour communiquer ne sont pas corrompus&. |
Un exemple quelque peu pernicieux est de modifier le répertoire par défaut de la machine distante pour l'utiliser avec l'option --relative. Par exemple : |
|
[/col][/row][/table]
"-C, --cvs-exclude"
Ceci est un raccourci utile pour exclure une grande quantité de fichiers que vous n'avez souvent pas envie de transférer entre deux systèmes&. Il utilise l'algorithme que CVS utilise pour déterminer si un fichier doit être ignoré&. |
La liste d'exclusion est initialisée à : |
|
ensuite les fichiers listés dans $HOME/&.cvsignore sont ajoutés à la liste ainsi que tous les fichiers listés (séparés par des blancs) dans la variable d'environnement CVSIGNORE&. |
Finalement, tous les fichiers qui sont dans le même répertoire qu'un &.cvsignore et qui correspondent à l'un des motifs listé dans celui-ci sont ignorés. Contrairement aux filtres et aux fichiers d'exclusion de rsync, les motifs sont séparés par des blancs&. Consultez le manuel cvs(1) pour plus d'information. |
Si vous combinez -C à vos propres règles --filter, vous devriez garder à l'esprit que ces exclusions CVS sont ajoutées à la fin de vos propres règles, quelle que soit la position de -C dans la liste d'arguments&. Cela leur donne une plus faible priorité que les règles que vous spécifiez explicitement&. Pour contrôler quand exactement ces exclusions CVS sont insérées dans vos règles de filtre, vous devez omettre -C de la ligne d'arguments et utiliser à la place la combinaison de --filter=:C et --filter=-C (soit sur la ligne de commande, soit en plaçant ":C" et "-C" dans l'un de vos fichiers de règles)&. La première des options active l'utilisation du fichier &.cvsignore. La seconde importe en une fois toutes les exclusions CVS mentionnées précédemment&. |
[/col][/row][/table]
"-f, --filter=RÈGLE"
Cette option vous permet d'ajouter des règles pour exclure de manière fine certains fichiers depuis une liste de fichier à transmettre&. Cette option est particulièrement utile en combinaison à un transfert récursif&. |
Il est possible des spécifier plusieurs fois l'option --filter sur la ligne de commande, vous permettant ainsi de construire à vos souhaits une liste de fichiers à exclure&. |
Voir la section RÈGLES DE FILTRE pour plus d'information sur cette option&. |
[/col][/row][/table]
"-F"
L'option t-F est un raccourci pour ajouter deux règles --filter à votre commande&. La première occurrence est un raccourci pour cette règle : |
|
Ceci indique à rsync de rechercher récursivement les fichiers &.rsync-filter éparpillés dans la hiérarchie et d'utiliser leurs règles pour filtrer les fichiers lors du transfert&. Si -F est répété, c'est alors un raccourci pour la règle suivante : |
|
Ceci filtre les fichiers &.rsync-filter eux-mêmes lors du transfert&. |
Voir la section RÈGLES DE FILTRE pour plus d'information sur le fonctionnement de cette option&. |
[/col][/row][/table]
"--exclude=MOTIF"
Cette option est une forme simplifiée de l'option --filter avec une règle d'exclusion et qui n'accepte pas la syntaxe complète des règles de filtre&. |
Voir la section RÈGLES DE FILTRE pour plus d'information sur cette option&. |
[/col][/row][/table]
"--exclude-from=FICHIER"
Cette option est similaire à l'option --exclude, mais ajoute les motifs d'exclusion listés dans le fichier FICHIER à la liste d'exclusion&. Les lignes vides dans FICHIER ou les lignes commençant par «;» ou par «#» sont ignorées&. Si FICHIER est - alors la liste sera lue depuis l'entrée standard&. |
[/col][/row][/table]
"--include=MOTIF"
Cette option est une forme simplifiée de l'option --filter avec une règle d'inclusion et qui n'accepte pas la syntaxe complète des règles de filtre&. |
Voir la section RÈGLES DE FILTRE pour plus d'information sur cette option&. |
[/col][/row][/table]
"--include-from=FICHIER"
Ceci spécifie une liste de motifs d'inclusion à lire depuis un fichier&. Si FICHIER est - alors la liste sera lue depuis l'entrée standard&. |
[/col][/row][/table]
"--files-from=FICHIER"
Cette option vous permet de spécifier la liste exacte des fichiers à transférer (obtenue depuis le FICHIER spécifié ou depuis l'entrée standard si le nom est «-»)&. Elle modifie également le comportement par défaut de rsync pour rendre le transfert de seulement les fichiers et le répertoires spécifiés plus simple : |
o
L'option --relative (-R) est activée, ce qui préserve l'information de chemin spécifié pour chaque entrée du fichier (utilisez --no-relative si vous souhaitez la désactiver)&. |
o
L'option --dirs (-d) est activée, ce qui créera les répertoires spécifiés dans la liste chez le récepteur au lieu d'afficher un avertissement et de les sauter&. |
o
Le comportement de l'option --archive (-a) ne contient pas --recursive (-r), vous devez donc la spécifier explicitement si vous la souhaitez&. |
Les noms de fichiers qui sont lus depuis FICHIER sont tous relatifs au répertoire source -- les «&|» en début de nom sont supprimés et les «&.&.» ne sont pas autorisés à remonter plus haut que le répertoire source&. Par exemple, la commande suivante : |
|
Si /tmp/foo contient la chaîne «bin» (ou même «/bin»), le répertoire /usr/bin sera créé en tant que /backup/bin sur la machine hotedst&. S'il contient «bin/» (remarquez la barre oblique), le contenu immédiat du répertoire sera aussi transmis (sans qu'il y ait besoin de le mentionner explicitement dans le fichier, depuis la version 2&.6&.4)&. Dans les deux cas, si l'option -r est activée, alors toute la hiérarchie du répertoire sera transférée (n'oubliez pas que -r doit être explicitement spécifiée car, avec --files-from, elle n'est pas impliquée par -a)&. Gardez également en tête que l'effet de l'option --relative (activée par défaut) est de dupliquer uniquement l'information de chemin présente dans le fichier ; elle ne force pas la duplication du chemin source (/usr dans le cas présenté)&. |
De plus, le fichier de --files-from peut être lu depuis l'hôte distant au lieu de l'hôte local, il faut pour cela spécifier «nom-de-l-hôte:» avant le nom du fichier (le nom de l'hôte doit correspondre à l'une des deux bouts de la transmission)&. Un préfixe «:» est un raccourci pour indiquer d'utiliser l'hôte distant&. Par exemple : |
|
Ceci copiera tous les fichiers spécifiés dans le fichier /chemin/file-list situé sur l'hôte distant «src»&. |
[/col][/row][/table]
"-0, --from0"
Ceci indique à rsync que les noms de règles/fichiers lus depuis un fichier sont séparés par un caractère nul («e0»), pas un NL, CR ni CR+LF&. Ceci affecte --exclude-from, --include-from, --files-from, ainsi que tous les fichiers inclus depuis une règle --filter&. Par contre, ceci n'affecte pas --cvs-exclude (puisque tous les noms lus depuis un &.cvsignore sont séparés par un blanc)&. |
[/col][/row][/table]
"-T, --temp-dir=R
Poster un commentaire