S majuscule dans les autorisations d'un dossier

43

Que signifie la lettre Sci-dessous? Le fichier en question est un dossier.

                                                                entrez la description de l'image ici

J'ai lu ici qu'une majuscule Speut indiquer que le setgidbit est actif pour un exécutable binaire . Mais ceci est un dossier. Cela signifie-t-il toujours que le setgidbit est activé pour cela? Si oui, qu'est-ce que cela signifie?

Amelio Vazquez-Reina
la source

Réponses:

36

Cela signifie que tous les fichiers déposés dans le dossier prendront le groupe propriétaire du dossier.

Par exemple: Supposons que vous avez un dossier appelé "shared" qui appartient à l'utilisateur "intrpc" et au groupe "utilisateurs", et que vous (en tant qu'utilisateur "initrpc") y déposez un fichier. En conséquence, le fichier appartiendra à l'utilisateur "intrpc" et au groupe "utilisateurs", quel que soit le groupe principal de "initrpc".

Sur la plupart des systèmes, si le bit set-group-ID d'un répertoire est défini, les sous-fichiers nouvellement créés héritent du même groupe que le répertoire et les sous-répertoires nouvellement créés héritent du bit set-group-ID du répertoire parent.

Vous pouvez lire à ce sujet ici .

Pourquoi la lettre est-elle en majuscule (à partir du lien que vous avez donné)?

setgid n'a aucun effet si le groupe ne dispose pas des autorisations d'exécution. setgid est représenté par un "s" minuscule dans la sortie de ls. Dans les cas où il n'a pas d'effet, il est représenté par un "S" majuscule.

Hanan N.
la source
Voici une belle explication de setgid appliquée aux répertoires.
Matthias Braun
2
Je pense que c'est trompeur de dire setgid has no effect if the group does not have execute permissionsparce que cela a un effet. Ajoutez simplement un fichier au répertoire en tant que propriétaire du répertoire: le fichier contiendra le groupe du répertoire au lieu du groupe principal du propriétaire.
Matthias Braun
12

La lettre majuscule S vient du fait que le répertoire ne dispose pas des autorisations d'exécution pour le groupe. D'une certaine manière, cela indique une "erreur", comme vous le dites:

les sous-fichiers nouvellement créés héritent du même groupe que le répertoire et les sous-répertoires nouvellement créés héritent du bit set-group-ID du répertoire parent.

(source: https://www.gnu.org/software/coreutils/manual/html_node/Directory-Setuid-and-Setgid.html )

Cependant, vous refusez l'autorisation aux membres du groupe d'entrer dans l'annuaire.

Pas maintenant
la source