Como apagar o usuário de todos os grupos secundários no FreeBSD?

1

De acordo com a documentação de pw usermod :

-G grouplist Set secondary group memberships for an account. grouplist is a comma, space, or tab-separated list of group names or group numbers. The user is added to the groups specified in grouplist, and removed from all groups not specified. The current login session is not affected by group member- ship changes, which only take effect when the user recon- nects. Note: do not add a user to their primary group with grouplist.

Eu tentei

pw usermod test_user -G ''

mas esse comando não tem efeito algum.

Solução alternativa: Excluir um usuário de todos os grupos, exceto um:

pw usermod test_user -G test_group

e, em seguida, exclua o usuário desse grupo:

pw groupmod test_group -d test_user

Mas isso requer a criação de um grupo de lixo ou o conhecimento de um dos grupos de usuários. Existe uma maneira mais simples?

    
por ov7a 31.03.2017 / 12:06

1 resposta

0

Infelizmente, não parece um caminho fácil. No entanto, é trivial obter uma lista separada por vírgulas de grupos secundários para um usuário:

pw usershow $user -P | grep Groups: | cut -w -f 3  

Você pode iterar facilmente e usar:

pw groupmod $group -d $user
    
por 09.07.2017 / 02:18