Recientemente actualicé a Snow Leopard. Me di cuenta de que algunos archivos escritos por MacPorts se instalan con un permiso incorrecto; están escritos con una máscara de 0077. Creo que he reducido el problema:
- El 
portcomando se invoca a través desudo. - Mi 
.bashrcarchivo especifica una umask de 0077. - En versiones anteriores de OS X (10.5 y versiones inferiores), sudo usaba la umask del usuario root (que era 0022); sin embargo, ahora usa mi umask de 0077.
 
¿Hay alguna forma de sudousar el viejo comportamiento? En este momento, es un poco molesto porque tengo que utilizar sudopara ejecutar comandos simples como port installed, port outdated, etc.
(El problema se describe con más detalle en este ticket de MacPorts ).
Editar
Descubrí la umaskopción para sudo, y /etc/sudoersagregué la siguiente línea:
Defaults umask=0022
Sin embargo, esto no funcionó como se deseaba, porque la máscara de usuario real utilizada por sudoes la unión de la máscara de usuario con esta máscara predeterminada. Para anular el comportamiento de sudoumask y usar el valor predeterminado directamente (es decir, no la unión del usuario y la máscara de sudo predeterminada), se puede agregar lo siguiente:
Defaults umask_override
                
Terminé agregando lo siguiente a mi
.bashrcscript de configuración:fuente
qué tal si:
fuente
Con tu .bashrc
fuente
sudorealidad no (re) fuente.bashrc, pero hereda la configuración actual del usuario que invocó sudo.Para el registro: la versión actual de sudo como una nueva opción 'umask_override', que debería evitar que las umask se fusionen, por lo que también debería poder bajar la umask. Lamentablemente, Mac OS X 10.6.6 no parece tener esta versión de sudo ...
fuente