J'ai récemment mis à niveau vers Snow Leopard. J'ai remarqué que certains fichiers écrits par MacPorts sont installés avec la mauvaise autorisation - ils sont écrits avec un umask de 0077. Je pense que j'ai résolu le problème:
- La
portcommande est invoquée viasudo. - Mon
.bashrcfichier spécifie un umask de 0077. - Sur les anciennes versions d'OS X (10.5 et inférieures), sudo utilisait le umask de l' utilisateur root (qui était 0022); cependant, maintenant il utilise mon umask de 0077.
Existe-t-il de toute façon d' sudoutiliser l'ancien comportement? En ce moment, il est un peu ennuyeux parce que je dois utiliser sudopour exécuter des commandes simples comme port installed, port outdated, etc.
(Le problème est décrit plus en détail dans ce ticket MacPorts .)
Éditer
J'ai découvert l' umaskoption pour sudo et /etc/sudoersj'ai ajouté la ligne suivante:
Defaults umask=0022
Cependant, cela n'a pas fonctionné comme souhaité, car le vrai umask utilisé par sudoest l' union du masque utilisateur avec ce masque par défaut. Afin de remplacer le comportement de sudoumask et d'utiliser directement la valeur par défaut (c'est-à-dire, pas l' union de l'utilisateur et le masque sudo par défaut), on peut ajouter ce qui suit:
Defaults umask_override