Como alterar o grupo principal

11

Quero remover o usuário pserverdo grupo apache.

#deluser pserver apache
/usr/sbin/deluser: You may not remove the user from their primary group.

Agora eu quero adicionar um novo grupo primário, então executei o seguinte;

#usermod -G pserver pserver

O que retornou o seguinte:

pserver` is now in group `pserver

#groups pserver
pserver : apache pserver

Agora, quero remover o usuário novamente do grupo apache, mas recebo o mesmo erro novamente. Como posso excluir pserverdo grupo principal apache?

OrangeTux
fonte

Respostas:

18

A usermodopção -Gadiciona grupos suplementares. Você deseja a opção -gde alterar o grupo principal. Ou seja, seu comando deveria ter sido:

# usermod -g pserver pserver

Observe que isso também mudará a propriedade do grupo de arquivos no diretório inicial, mas não em outros lugares.

De maneira mais geral, a sintaxe para alterar o usuário 'user' para ter o grupo principal 'group' é:

# usermod -g group user
StarNamer
fonte
Não está claro neste comando qual é o usuário e qual é o grupo, pois nessa circunstância única os dois são idênticos, mas frequentemente não será assim.
Kzqai 13/09/16
Texto atualizado para responder ao comentário acima
StarNamer
1

A pergunta feita pelo OP é enganosa. O título diz "Como alterar o grupo primário", no entanto, no corpo da pergunta, é claro que a intenção é não apenas substituir o grupo principal, mas também remover o primário anterior.

Caso alguém queira apenas substituir o primário, mas não removê-lo da lista, basta adicionar o primário anterior de volta à lista.

Então, depois de seguir o post da StarNamer , basta fazer um

adduser user previous-primary-group

porque o comando usermod terá descartado seu grupo principal anterior da lista de grupos aos quais você pertence.

zerzevul
fonte