Recentemente, atualizei para o Snow Leopard. Notei que alguns arquivos escritos por MacPorts são instalados com a permissão errada - eles são escritos com uma umask de 0077. Acho que reduzi o problema:
- O
port
comando é chamado viasudo
. - Meu
.bashrc
arquivo especifica uma umask de 0077. - Nas versões mais antigas do OS X (10.5 e abaixo), o sudo usava o umask do usuário raiz (que era 0022); no entanto, agora ele usa minha umask de 0077.
Existe alguma maneira de sudo
usar o comportamento antigo? Agora, é uma espécie de chato, porque eu tenho que usar sudo
para executar comandos simples, como port installed
, port outdated
, etc.
(O problema é descrito em mais detalhes neste tíquete do MacPorts .)
Editar
Eu descobri a umask
opção para sudo e /etc/sudoers
adicionei a seguinte linha:
Defaults umask=0022
No entanto, isso não funcionou como desejado, porque o umask real usado por sudo
é a união da máscara do usuário com essa máscara padrão. Para substituir o comportamento de sudo
umask e usar o padrão diretamente (ou seja, não a união do usuário e da máscara sudo padrão), pode-se adicionar o seguinte:
Defaults umask_override
Acabei adicionando o seguinte ao meu
.bashrc
script de configuração:fonte
e quanto a:
fonte
Com o seu .bashrc
fonte
sudo
verdade não é (re) fonte.bashrc
, mas herda a configuração atual do usuário que chamou o sudo.Para o registro: a versão atual do sudo como uma nova opção 'umask_override', que deve impedir que as umask sejam mescladas, para que você também possa abaixá-las. Infelizmente, o Mac OS X 10.6.6 não parece exibir esta versão do sudo ...
fonte