Para que serve o chmod 6050


8

Recentemente me deparei com o comando:

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

Eu não sei o que isso significa? Eu sei permissões de arquivo como 777 etc. em um modo rwx para outros proprietários de grupos. Mas isso resulta em

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

Alguém pode explicar um pouco?


Essas permissões são estranhas. 6550 faria mais sentido - quase nunca faz sentido remover permissões do proprietário, mas concedê-las a outros usuários. Aqui o proprietário é root, o que efetivamente significa que as permissões do usuário não são usadas, apenas parece estranho.
Gilles 'SO- stop be evil'

Respostas:


8

O 050deve ser clara, que os conjuntos de ler e executar bits para o grupo dos primeiros 6sets os set-user-ID e set-group-ID pedaços (ver man 2 chmod). Efetivamente, isso significa que a execução container-extractorsó pode ser feita por rootou membros do grupo hadoope que o executável é executado com um uidser rootefetivo e um gidser efetivo hadoop.


Deve-se observar que rootobtém permissão de execução não por causa das permissões do proprietário do arquivo, mas porque é superusuário e pelo menos um dos componentes de permissão (aqui o grupo) possui permissão de execução. 6110 permissões em minha mente teriam feito mais sentido. É prática comum para negar o acesso de leitura para setuid / setgid comandos (embora o benefício de segurança é muito pouco)
Stéphane Chazelas

@StephaneChazelas Obrigado por comentários. Por que você excluiu sua resposta? Notei que estava lá quando salvei o meu.
Anthon
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.