2010-12-01 30 views
0

J'utilise rsync -avlz pour synchroniser des fichiers entre mon serveur de développement et mon serveur de production. Sur mon serveur de production, j'ai des fichiers de configuration avec des options spécifiques à ce serveur (par exemple, les mots de passe, les numéros de ports, etc.) et je ne veux pas que ces fichiers soient écrasés quand je fais le rsync. Toutefois, même si ces fichiers disposent de 444 autorisations, ils sont toujours remplacés. Quelqu'un peut-il m'expliquer pourquoi cela se produit ou me diriger dans la direction de comment l'empêcher? Il me semble que mettre les fichiers en lecture seule empêcherait rsync de les mettre à jour.rsync remplace les fichiers en lecture seule. Comment puis-je empêcher cela?

REMARQUE: Je préférerais ne pas avoir à exclure spécifiquement les fichiers si je n'ai pas à le faire. J'aimerais que le serveur sache qu'il ne faut pas écraser les fichiers en lecture seule.

Répondre

3

rsync ne se soucie pas de "lecture seule", d'autant plus que vous lui avez également demandé de synchroniser les autorisations. Conservez les paramètres locaux dans un fichier distinct et incluez-les dans la configuration principale.

0

Si votre système de fichiers est ext2/3/4, vous pouvez définir temporairement le immutable sur le fichier en utilisant chattr (Expect errors, though), par exemple.

chattr +i local.conf