Qu'est-ce que le mode archive dans rsync?

170

Je sais que vous pouvez utiliser -aou --archiveactiver le mode archive lorsque vous utilisez rsync. Malheureusement, je n'ai aucune idée de ce que le mode d'archivage est censé faire, et la page de manuel n'est pas du tout explicite sur ce que c'est:

est égal à -rlptgoD (no -H, -A, -X)

Pouvez-vous expliquer la signification de ces options ( rlptgoD) et quel est le comportement de rsync lorsque je les utilise?

allyourcode
la source

Réponses:

204

C'est tout cela:

-r, --recurse récursive dans les répertoires

-l, --links copie les liens symboliques en tant que liens symboliques

-p, --perms conserve les autorisations

-t, --times conserver les temps de modification

-g, --group préserver le groupe

-o, --owner préserver le propriétaire (super-utilisateur uniquement)

-D Même que --devices --specials

--devices préserve les fichiers de périphérique (super-utilisateur uniquement)

--specials conserve des fichiers spéciaux

Il exclut:

-H, --hard-links préserve les liens durs

-A, --acls préserve les ACL (implique -p)

-X, --xattrs préservent les attributs étendus

C'est parfait pour les sauvegardes. Mon ensemble de commutateurs "par défaut" est le suivant -avzP: mode archive, commentaire, utilisation de la compression, conservation des fichiers partiels, progression de l’affichage.

Remarque: Invariablement, lorsque les descriptions indiquent "préserver", cela signifie que la destination doit ressembler à la source.

Andrew
la source
26
+1 - oui, il est dans la page de manuel, mais il est également agréable de le voir ici avec la réponse pour référence facile
cwd
3
plus facile que de regarder dans la page de manuel: P?
Salami
1
+1 pour le partage de la combinaison d'options pour les sauvegardes (-avzP).
RoboAlex
2
ouais quelque part sur le chemin, Imgtfy est devenu plus facile que l'homme rsync.
Stu
1
@xealits Selon la page de manuel,The -P option is equivalent to --partial --progress.
Publié
15

Assurez-vous que la permission, les attributs, etc. sont les mêmes des deux côtés. rsync ne fonctionne que de cette façon ... si vous souhaitez synchroniser des fichiers, vous devez utiliser le paramètre -a.

Cela est dû au fait que rsync compare ces autorisations, attributs, etc. des deux côtés pour déterminer s’ils correspondent au même fichier et décider s’ils doivent être mis à jour. si vous utilisez rsync -r xxx yyy à la place, rsync -a xxx yyy, certains fichiers seront copiés et rediffusés, coz, permission, attribut non synchronisé et absence de correspondance des deux côtés ...

David
la source
14

Le commutateur d'archivage n'est qu'un raccourci pour éviter de devoir entrer un ensemble de commutateurs que vous utiliserez normalement si vous utilisez rsync pour effectuer des sauvegardes (tâche courante).

C'est la même chose que de taper:

rsync -r -l -p -t -g -o -D

Et c'est beaucoup plus facile à retenir. Vous pouvez trouver des définitions pour tous ces commutateurs dans la page de manuel.

(Les traits d'union sont facultatifs lorsque vous combinez plusieurs commutateurs à une lettre.)

Steve Simms
la source
8
merci, mais je pense que vous manquez mon point. Pouvez-vous expliquer en quoi consiste la combinaison de toutes ces options sans m'avoir demandé de lire 7 parties différentes de la page de manuel, qui font probablement référence à d'autres parties de la page de manuel?
allyourcode
17
Je pense que vous oubliez qu'il est important de lire la page de manuel pour savoir exactement ce que vous faites. rsync a des options très puissantes, y compris un moyen de supprimer des fichiers! C'est comme si vous demandiez de l'aide pour utiliser une scie à table parce que vous n'aimez pas lire les manuels d'instructions.
David M
2
Bien sûr, je n'aime pas lire le manuel d'instructions pour la centième fois, alors que je peux me référer à une feuille de triche.
CivFan