Execute o programa com o grupo suplementar adicional

1

Estou procurando algo como o sudo (ou algo que pode ser executado a partir do sudo) que me permite executar um programa com meu uid e gid primário, mas com um grupo adicional adicional.

    
por rkjnsn 05.12.2012 / 01:47

2 respostas

1

Aviso # 1: esta é uma abordagem alternativa 'hacky'.

Aviso # 2: nem todos os aplicativos / script podem manipular este uid / gid ambíguo.

Crie um novo usuário com o mesmo uid e gid, usando useradd , sua opção --non-unique para permitir que vários usuários com o mesmo uid / gid existam e sua opção --groups especifique grupos adicionais. Por exemplo:

useradd --uid 1001 --gid 1001 --groups 1002,1003 --shell /bin/bash \
        --home /home/cloneduser cloneduser

Você deve então executar o programa como este novo usuário. Eu sugiro depurá-lo usando id .

    
por 05.12.2012 / 09:54
0

Não está claro se você deseja que o grupo adicional se torne como se fosse o grupo primário, ou seja, o grupo de todos os novos arquivos criados; ou se esse grupo não for nem mesmo um grupo secundário desse usuário.

No primeiro caso, se você já é um membro desse grupo, você pode usar dois comandos diferentes, "newgrp" e "sg". Ambos realizam o mesmo resultado, mas um executa um shell interativo com o novo gid, enquanto o segundo executa somente um comando.

No segundo caso, você deve configurar uma senha para o grupo usando o comando groupadd ou groupmod e, novamente, ao usar "newgrp" ou "sg", será solicitada a senha antes de executar o comando.

Outra abordagem diferente e mais simples é alterar o proprietário do grupo do seu executável, definindo o bit de setgid. Mais informações sobre esse bit estão na página man do chmod.

    
por 05.12.2012 / 10:11