Comment supprimer un utilisateur d'un groupe?

108

J'ai ajouté un compte d'utilisateur au admingroupe et découvert que j'avais ajouté le mauvais utilisateur. Je dois donc maintenant supprimer le compte du admingroupe.

Comment puis-je supprimer un compte d'un groupe sans supprimer l'utilisateur?

Eonil
la source

Réponses:

144

La réponse de Portablejim est exacte mais dangereuse - si vous écrivez quelque chose, votre système peut être inutilisable, en particulier si vous modifiez le groupe d'administration de manière incorrecte. Si vous devez modifier le fichier de groupes, utilisez les commandes vipw -gou vigr, qui vérifient la syntaxe avant de sauvegarder. Même dans ce cas, il existe de meilleurs moyens.

À partir d’une ligne de commande, celle que vous voulez probablement utiliser est la suivante (en tant que root):

deluser <username> <groupname>

Cela supprimera l'utilisateur spécifié du groupe spécifié. Vous devez vous reconnecter pour voir l'effet. Cela ne supprimera pas l'utilisateur, ni le groupe, mais uniquement les membres. Il existe également des moyens de le faire avec la usermodcommande, mais il est plus difficile à utiliser car vous devez remplacer la liste complète des groupes d'un utilisateur afin de supprimer un seul groupe. La gpasswdcommande est également capable de le faire (comme le fait remarquer sagarchalise), mais elle est généralement déconseillée. Comme toujours, consultez les pages de manuel pour plus de détails.

zanfur
la source
9
gpasswdn'est pas obsolète. Son seul objectif est d’administrer / etc / group et / etc / gshadow. De plus, bien que votre méthode fonctionne et qu’elle soit mentionnée dans la page de manuel deluser, elle est un peu risquée. Si vous appuyez accidentellement sur Entrée avant de saisir le nom du groupe, vous supprimez l'utilisateur. Espérons que vous vous souveniez de son UID pour pouvoir le rajouter rapidement. Il serait plus prudent d'utiliser gpasswd, conçu à cet effet.
Starfish
1
J'ai aussi pensé à ce risque. Je suppose que vous pouvez toujours démarrer une telle commande avec un '#', appuyez sur Entrée, puis réexécutez-la tout en supprimant le premier caractère.
ezequiel-garzon
"Vous devez vous reconnecter pour voir l'effet." ... ou vous pouvez simplement écrire: 'cat / etc / group'
josh.thomson
J'avais trouvé deluserlors de la recherche dans les pages de manuel (ici avec Ubuntu 18 en 2018), mais la première ligne de la page de manuel indique: "supprimer un utilisateur ou un groupe du système", alors je suis passé à autre chose. Il est clair que la page de manuel doit être mieux libellée.
tim.rohrer
J'ai trouvé cette réponse dans un article et immédiatement les poils sur la nuque se sont relevés. Je ne sais pas pourquoi tant de gens aiment et acceptent cette réponse, mais c'est dangereux à mon humble avis; esp comme racine. Anthony Geoghegan répond est la bonne solution; tout comme Starfish le dit aussi.
46

Tu peux le faire:

sudo gpasswd -d username group

Vous devriez également consulter le manuel de gpasswd

Sagarchalise
la source
4
L’un des avantages gpasswdest qu’il est plus multi-plateforme et fonctionne également sur les distributions basées sur Red Hat.
Anthony Geoghegan le
C'est la bonne réponse. Si seulement il atteignait le sommet.
Pouvez-vous éditer votre réponse pour expliquer ce que fait le drapeau -d? (J'ai voté pour cela comme la meilleure réponse, en tout cas! Merci!)
Aerendir Le
2

Le moyen le plus simple et le plus sûr:

sudo -H gedit /etc/group

et supprimez-le manuellement.

vanbran
la source
Je vois celui-ci enrty. ssh:x:118: Quelle est la signification du nombre 118ici?
Ankit7540
certainement PAS le moyen le plus sûr!
callmebob
2

Voir la réponse de zanfur.

Editez le /etc/groupfichier en tant que root (c.-à-d. gksudo gedit /etc/group) Et supprimez le nom d'utilisateur de la ligne commençant par 'admin'

c'est à dire

...
admin:x:120:adminuser,adminuser2,userthatshouldnotbeadmin
...

devient

...
admin:x:120:adminuser,adminuser2
...

Soyez averti, les fautes de frappe dans le fichier peuvent endommager votre système.

Portablejim
la source
11
Ne conseillez pas de modifier ces fichiers système manuellement. Au cas où vous bousilleriez votre système, il pourrait devenir inaccessible.
gertvdijk
Ou du moins les sauvegarder en premier. ( Informations connexes. )
Eliah Kagan
2
Je pense que vous devriez poster ceci car il s'agit d'un aperçu précieux du fonctionnement de Linux. Cependant, devrait inclure un avertissement qu'il existe un moyen beaucoup plus sûr
Freedom_Ben