S maiúsculo nas permissões de uma pasta

36

O que significa a letra S abaixo? O arquivo em questão é uma pasta.

Euli aqui que um S em maiúsculas pode representar que o setgid bit está ativo para a < strong> executável binário . Mas esta é uma pasta. Isso ainda significa que o setgid está ativado? Se sim, o que isso significa?

    
por Amelio Vazquez-Reina 20.12.2011 / 21:11

2 respostas

29

Isso significa que qualquer arquivo descartado na pasta assumirá o grupo proprietário da pasta.

Por exemplo: suponha que você tenha uma pasta chamada "shared" que pertence ao usuário "intrpc" e ao grupo "users", e você (como usuário "initrpc") coloca um arquivo nela. Como resultado, o arquivo pertencerá ao usuário "intrpc" e ao grupo "users", independentemente do grupo primário de "initrpc".

On most systems, if a directory's set-group-ID bit is set, newly created subfiles inherit the same group as the directory, and newly created subdirectories inherit the set-group-ID bit of the parent directory.

Você pode ler sobre isso aqui .

Por que a letra maiúscula (do link que você deu)?

setgid has no effect if the group does not have execute permissions. setgid is represented with a lower-case "s" in the output of ls. In cases where it has no effect it is represented with an upper-case "S".

    
por 20.12.2011 / 21:20
10

A maiúscula S é porque o diretório não tem permissões de execução para o grupo. De certa forma isso indica um "erro", como você está dizendo:

newly created subfiles inherit the same group as the directory, and newly created subdirectories inherit the set-group-ID bit of the parent directory.

(fonte: link )

No entanto, você está negando permissão para os membros do grupo entrarem no diretório.

    
por 20.12.2011 / 21:29