À quoi sert CHMOD 6050

8

Récemment, j'ai rencontré pour commander:

chmod -R 6050 /usr/lib/hadoop-yarn/bin/container-executor

Je ne sais pas ce que ça veut dire? Je connais les autorisations de fichiers comme 777, etc. dans un mode rwx pour les autres groupes de propriétaires. Mais cela se traduit par

---Sr-s---. 1 root hadoop 36024 Oct 17 20:40 container-executor

Quelqu'un peut-il expliquer un peu?

jaksky
la source
Ces autorisations sont étranges. 6550 aurait plus de sens - cela n'a presque jamais de sens de supprimer les autorisations du propriétaire mais de les accorder à d'autres utilisateurs. Ici, le propriétaire est root, ce qui signifie que les autorisations utilisateur ne sont pas utilisées, cela semble étrange.
Gilles 'SO- arrête d'être méchant'

Réponses:

8

Le 050devrait être clair, qui définit les bits de lecture et d'exécution pour le groupe, le premier 6définit les bits set-user-ID et set-group-ID (voir man 2 chmod). En effet, cela signifie que l'exécution container-extractorne peut être effectuée que par rootou des membres du groupe hadoopet que l'exécutable s'exécute avec un uidêtre rooteffectif et un gidêtre effectif hadoop.

Anthon
la source
Il convient de noter que rootobtient l'autorisation d'exécution non pas en raison des autorisations du propriétaire du fichier, mais parce qu'il est superutilisateur et qu'au moins un des composants d'autorisation (ici le groupe) dispose d'une autorisation d'exécution. 6110 autorisations à mon avis auraient été plus logiques. C'est une pratique courante de refuser l'accès en lecture aux commandes setuid / setgid (bien que l'avantage de sécurité soit très faible)
Stéphane Chazelas
@StephaneChazelas Merci pour les commentaires. Pourquoi avez-vous supprimé votre réponse? J'ai remarqué qu'il était là quand j'ai sauvé le mien.
Anthon