umask e a ACL padrão (não presente no seu caso) afetam apenas os objetos recém-criados. Ou seja para arquivos regulares, algum processo deve executar open()
(ou mkdir()
para diretórios.
As permissões são determinadas no momento da criação (dos parâmetros open()
, umask e talvez ACLs padrão) e armazenadas no inode.
Se um arquivo é apenas movido (dentro de um sistema de arquivos), então rename()
é chamado e este syscall não afeta o inode, apenas onde a hierarquia do sistema de arquivos é mostrada.