Recebo 700 quando faço um arquivo de teste, mas umask é 0002? Por que não é 664?

Recebo 700 quando faço um arquivo de teste, mas umask é 0002? Por que não é 664?

Onde os valores padrão de 666 e 777, para arquivos e diretórios respectivamente, são armazenados?

umask 0002
touch dummy 
ls -l 

Diz-me que as permissões do manequim são 700, em oposição às 644 esperadas. Alguma ideia?

Responder1

[max@localhost ~]$ umask

Isso exibirá umask padrão

0002

No /etc/bashrcarquivo as permissões padrão são armazenadas

16 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; então
 17 umask 002
 18 mais
 19 umask 022
 20 fi

O umask padrão para o usuário normal 002

O umask padrão para o usuário root é 022

Para diretórios, as permissões básicas são 0777 e para arquivos 0666

Isso significa que se você definir o valor umask como 002, subtrairá o umask das permissões básicas

Para diretórios

777-002 =775

Para arquivos

666-002 =664

[max@localhost ~]$ mkdir arquivo1

[max@localhost ~]$ ls -ld arquivo1

drwxrwxr-x 2 max max 4096 25 de setembro 15:37 arquivo1 ------>775

[max@localhost ~]$ toque no arquivo2

[max@localhost ~]$ ls -l arquivo2

-rw-rw-r-- 1 máx. máximo 0 25 de setembro 15:40 arquivo2------->664

informação relacionada