Vous pouvez utiliser :usermod -a -G grouptoadd username
Puisqu'il est beaucoup moins évident que je ne le pensais pourquoi -a -G est ok alors que -aG ne l'est pas, je vais essayer de l'expliquer :
Les options -G acceptent soit une valeur, soit une liste de valeurs. Dans le cas d'une valeur, la valeur peut être donnée comme :-GVALUE car il n'est pas nécessaire d'avoir un espace entre l'option et la valeur. C'est juste une pratique courante.
Si vous avez un groupe appelé a sur votre système, appeler -Ga devient ambigu. Voulez-vous que l'utilisateur n'ait qu'un seul groupe a ? Appelez-vous -a et -G ? Alors "a" est-il une valeur pour -G ? Où est le reste de la valeur (vers -G) ? Il est également courant que toute option à une seule lettre puisse être utilisée avant toute autre option à une seule lettre. donc tat -xy ==-yz. Mais cela est ambigu lorsque l'une des options peut prendre soit une seule valeur comme VALUE, soit plusieurs valeurs comme VAL1, Val2, val4, etc.
Donc, pour que la commande FAILSAFE fonctionne correctement pour toutes les entrées, vous devez séparer -a de -G
À partir de man usermod
:
Nom
usermod - modifier un compte utilisateur
Synopsis
usermod [options] CONNEXION
Description
Le usermod La commande modifie les fichiers du compte système pour refléter les modifications spécifiées sur la ligne de commande.
Options
Les options qui s'appliquent à l'usermod commande sont :
-a, --append
Ajouter l'utilisateur au groupe supplémentaire (s). Utiliser uniquement avec le -G option.
...
-G, --groups GROUP1[,GROUPE2,...[,GROUPE]]]
Une liste de groupes supplémentaires dont l'utilisateur est également membre. Chaque groupe est séparé du suivant par une virgule, sans espace intermédiaire. Les groupes sont soumis aux mêmes restrictions que le groupe donné avec le -g option.
Si l'utilisateur est actuellement membre d'un groupe qui n'est pas répertorié, l'utilisateur sera supprimé du groupe. Ce comportement peut être modifié via le -a option, qui ajoute l'utilisateur à la liste de groupe supplémentaire actuelle.
...