web-dev-qa-db-fra.com

exécuter rsync en tant que root mais conserver la propriété de l'utilisateur

Je voudrais sauvegarder des fichiers utilisateur d'un serveur à un autre avec rsync. mais j'ai remarqué que les dossiers utilisateur changent en racine. comment puis-je conserver les autorisations utilisateur avec rsync (exécuté par root)?

37
edotan

Utilisez le -a flag, qui comprend entre autres les options -o et -g, qui préserve les propriétaires et les groupes. Cela nécessite que vous exécutiez rsync en tant que root.

Regarde aussi man rsync.

48
Sven

Le maintien des autorisations s'effectue via le mode "archive", -a. L'exemple courant est -avz:

rsync -avz foo:src/bar/ /data/bar

Cela garantit que les liens symboliques, les périphériques, les attributs, les autorisations, les propriétés, etc. sont préservés dans le transfert. De plus, la compression sera utilisée pour réduire la taille des parties de données du transfert.

17
Jeremy L

Si vous utilisez rsync pour la sauvegarde, je peux vraiment recommander d'utiliser rsnapshot à la place (il utilise rsync). Il fait pivoter les sauvegardes et utilise des liens durs pour que vous puissiez voir les différences entre vos sauvegardes quotidiennes (mais les dossiers semblent toujours avoir le contenu complet). Je l'utilise pour sauvegarder les serveurs Windows et Linux au travail. Parfait pour nous!

6