O que é umask daquela sessão de login de usuários definida como?
Além disso, você sempre pode chmod o diretório depois de criá-lo. "man chmod" para detalhes.
Em uma máquina Linux (ubuntu), um script automatizado sendo executado como um usuário normal está criando um subdiretório sob seu diretório inicial. Por algum motivo, o diretório é criado com Access: (0000/d---------)
. umask é 0022. Isso obviamente significa que o script não pode criar nenhum arquivo nesse diretório.
Alguém pode pensar em alguma coisa?
Aparentemente, isso só acontece com a conta que não é de superusuário.
Atualização: O problema foi realmente um bug. O mkdir foi chamado como um comando do sistema a partir do código C, não como o utilitário de linha de comando. E o programador que chamou o modo usado = 0 ...
De qualquer forma - o motivo pelo qual DID funcionava quando rodava como root, é que o root pode criar arquivos em diretórios mesmo quando as permissões não permitem.
O que é umask daquela sessão de login de usuários definida como?
Além disso, você sempre pode chmod o diretório depois de criá-lo. "man chmod" para detalhes.
Tags directory permissions linux