Je souhaite supprimer l'utilisateur pserver
du groupe Apache
.
#deluser pserver Apache
/usr/sbin/deluser: You may not remove the user from their primary group.
Maintenant, je veux ajouter un nouveau groupe principal, alors j'ai lancé ce qui suit:
#usermod -G pserver pserver
Qui a retourné ce qui suit:
pserver` is now in group `pserver
#groups pserver
pserver : Apache pserver
Maintenant, je veux supprimer à nouveau l'utilisateur du groupe Apache, mais je reçois à nouveau la même erreur. Comment puis-je supprimer pserver
du groupe principal Apache
?
L'option usermod
-G
ajoute des groupes supplémentaires. Vous souhaitez que l'option -g
modifie le groupe principal. C'est à dire. votre commande aurait dû être:
# usermod -g pserver pserver
Notez que cela modifiera également la propriété de groupe des fichiers dans le répertoire de base, mais pas ailleurs.
Plus généralement, la syntaxe pour changer l'utilisateur 'utilisateur' en groupe primaire 'groupe' est la suivante:
# usermod -g group user
En retard, mais un peu clair (du moins pour moi);
Sudo usermod -g <NewPrimaryGroupName> <TheTargetUserName>
Et puis vérifiez id
id <TheTargetUserName>
Plus de détails ici: http://manpages.ubuntu.com/manpages/precise/man8/usermod.8.html
Crédits: http://www.htpcbeginner.com/safely-change-primary-group-group-in-linux/
Merci pour la réponse.
La question posée par le PO est trompeuse. Le titre se lit comme suit: "Comment changer groupe primaire", cependant, dans le corps de la question, son intention est claire pour ne pas simplement remplacer le groupe primaire mais aussi remove le primaire précédent.
Au cas où quelqu'un voudrait simplement remplacer le primaire mais ne pas le supprimer de la liste, il faut simplement ajouter l'ancien primaire à la liste.
Donc, après avoir suivi StarNamerpost , il suffit de faire un
adduser user previous-primary-group
parce que la commande usermod aura supprimé votre groupe principal précédent de la liste des groupes auxquels vous appartenez.