Problema de permissões de arquivos do Unix

1

Eu quero definir permissões de forma que sempre que um diretório for criado por um 'usuário', suas permissões padrão devem ser 775 .

Mas quando esse 'usuário' cria um novo arquivo , as permissões padrão devem ser 774 .

Como posso conseguir isso?

    
por peakit 01.09.2009 / 19:03

2 respostas

1

Não sei como obter essas permissões exatas, mas usando umask, você pode definir as permissões para arquivos e diretórios dentro de 111 um do outro.

Este site explica como funciona: link

Por exemplo:

umask 002

daria 775 para diretórios e 664 para arquivos. Não exatamente o que você está procurando, mas você pode descobrir algo relacionado a umask.

O umask padrão pode ser encontrado em / etc / profile. Isso pode ser substituído para cada usuário editando o umask em ~ / .profile.

Nota: O umask padrão para a maioria das máquinas unix é 022, o que lhe dá: 644 (rw-r - r--) para arquivos e 755 (rwxr-xr-x) para diretórios.

    
por 01.09.2009 / 19:27
1

Umask explicou

As permissões de arquivo padrão nos arquivos e diretórios recém-criados são uma permissão padrão ( rw-rw-rw para arquivos, rwxrwxrwx para diretórios) subtraindo a configuração atual de umask. Uma configuração de umask de 000 manteria as permissões padrão, enquanto uma configuração de 777 removeria todas as permissões.

Os três números no umask representam usuário, grupo e qualquer pessoa, respectivamente. O número representa três dígitos binários para remover uma permissão específica ou não.

d - rwx
-------
0 - 000 (rwx)
1 - 001 (rw-)
2 - 010 (r-x)
3 - 011 (r--)
4 - 100 (-wx)
5 - 101 (-w-)
6 - 110 (--x)
7 - 111 (---)

Para calcular quais permissões um novo arquivo terá dado uma determinada umask, comece com a permissão padrão e subtraia a umask.

orig    rwx rwx rwx (777, default directory permission)
umask   000 010 010 (022)
result  rwx r-x r-x (755)

orig   rw- rw- rw- (666, default file permission)
umask  000 010 010 (022)
result rw- r-- r-- (644)

orig   rwx rwx rwx (777, default directory permission)
umask  000 000 010 (002)
result rwx rwx r-x (775)

orig   rw- rw- rw- (666, default file permission)
umask  000 000 010 (002)
result rw- rw- r-- (664)
    
por 01.05.2012 / 12:04