Comment ajouter un utilisateur à plusieurs groupes sous Linux
Gérer les utilisateurs et leur appartenance à des groupes de manière efficace est une tâche fondamentale dans l'administration des systèmes Linux et Unix. Cela garantit que les utilisateurs ont le bon accès aux ressources et aux données du système. En comprenant comment créer des utilisateurs, des groupes et associer des utilisateurs à des groupes, les administrateurs système peuvent établir un contrôle granulaire sur qui a accès à quelles ressources. Dans ce tutoriel, nous expliquerons comment ajouter un utilisateur à plusieurs groupes sur Linux et Unix.
Dans ce guide, nous allons apprendre les sujets suivants :
- Créez des comptes utilisateurs en utilisant la commande
useradd. - Créez les groupes nécessaires en utilisant la commande
groupadd. - Ajoutez des utilisateurs à plusieurs groupes en utilisant la commande
usermod. - Vérifiez l'appartenance à un groupe d'utilisateurs en utilisant les commandes
idetgroupsainsi que les principales différences entre ces deux commandes. - De plus, nous apprendrons comment ajouter plusieurs utilisateurs à plusieurs groupes.
À des fins de démonstration, nous allons créer un nouvel utilisateur appelé "test" et ajouter cet utilisateur aux groupes nommés "sysadmin", "devops" et "management".
Créer un nouvel utilisateur
La commande useradd est utilisée pour créer un nouveau compte utilisateur. Cette commande ajoute un nouveau compte utilisateur selon les options spécifiées sur la ligne de commande et les valeurs par défaut dans le système. Elle met à jour les fichiers système et définit les valeurs par défaut pour le nouvel utilisateur.
Créez un utilisateur appelé « test » en utilisant la commande :
$ sudo useradd testCette commande crée un nouveau compte utilisateur avec le nom d'utilisateur « test ».
Définir le mot de passe pour le nouvel utilisateur créé :
$ sudo passwd testContrairement à la commande
adduser, qui est plus interactive et conviviale, la commandeuseraddnécessite que vous spécifiiez manuellement toutes les options, comme le répertoire personnel et le shell, sinon elle utilisera les valeurs par défaut du système.
Afficher les informations sur l'utilisateur et le groupe
La commande id est utilisée pour afficher les informations sur l'utilisateur et le groupe pour un utilisateur spécifié. Si aucun nom d'utilisateur n'est spécifié, elle affiche les informations sur l'utilisateur actuel.
Cette commande est très utile pour vérifier les permissions et les appartenances d'un utilisateur. Elle est simple et fournit un résumé concis de l'identité d'un utilisateur sur le système.
Pour vérifier les groupes existants de l'utilisateur « test », nous utilisons la commande id comme suit :
$ id testCette commande affiche l'identifiant de l'utilisateur, l'identifiant du groupe et les groupes auxquels l'utilisateur "test" appartient.
Exemple de sortie :
uid=1001(test) gid=100(users) groups=100(users)Créer des groupes
La commande groupadd est utilisée pour créer un nouveau groupe. Les groupes sont un aspect fondamental des permissions sous Linux/Unix. En utilisant des groupes, nous pouvons spécifier les permissions pour un ensemble d'utilisateurs en même temps.
Créez les groupes « sysadmin », « devops » et « management » :
$ sudo groupadd sysadmin
$ sudo groupadd devops
$ sudo groupadd managementCes commandes créent les nouveaux groupes « sysadmin », « devops » et « management ».
Ajouter un utilisateur à plusieurs groupes
Ajoutez l'utilisateur « test » aux groupes ci-dessus :
$ sudo usermod -a -G sysadmin,devops,management testLa commande usermod est utilisée pour modifier le compte d'un utilisateur. L'option -a ajoute l'utilisateur aux groupes spécifiés, et l'option -G spécifie les groupes auxquels ajouter l'utilisateur (dans ce cas, « sysadmin », « devops » et « management »).
Créer un nouvel utilisateur avec plusieurs groupes
Dans notre exemple précédent, nous avons attribué l'utilisateur existant à plusieurs groupes. Vous pouvez également créer un nouvel utilisateur et l'ajouter à plusieurs groupes en une seule commande. La commande pour le faire serait :
$ sudo useradd -G sysadmin,devops,management testVoici une répartition de la commande :
sudo- Cela exécute la commande avec des privilèges de superutilisateur (root), ce qui est nécessaire pour créer un nouvel utilisateur.useradd- Cette commande crée un nouveau compte utilisateur.-G sysadmin,devops,management- Cette option spécifie les groupes auxquels le nouvel utilisateur doit être ajouté. Dans ce cas, l'utilisateur "test" est ajouté aux groupes "sysadmin", "devops" et "management".test- Voici le nom d'utilisateur du nouvel utilisateur en cours de création.
En utilisant cette commande unique, vous pouvez accomplir les tâches suivantes en une seule étape :
- Créer un nouveau compte utilisateur avec le nom d'utilisateur "test".
- Ajoutez l'utilisateur « test » aux groupes « sysadmin », « devops » et « management ».
Cela peut être une manière plus efficace de configurer un nouveau compte utilisateur et de gérer ses appartenances aux groupes, surtout si l'utilisateur doit faire partie de plusieurs groupes dès le départ.
Gardez à l'esprit que si vous souhaitez ajouter un utilisateur à des groupes supplémentaires plus tard, vous pouvez utiliser la commande usermod, comme montré dans l'exemple précédent :
$ sudo usermod -a -G additional_group testCela ajoute l'utilisateur « test » au « groupe_supplémentaire » sans le retirer des autres groupes dont il était déjà membre.
Vérifier l'appartenance de l'utilisateur à un groupe
Vérifiez les groupes de l'utilisateur « test » :
$ id testCette commande montrera maintenant que l'utilisateur « test » est membre des groupes « sysadmin », « devops » et « management », en plus de tout autre groupe auquel l'utilisateur peut appartenir.
Exemple de sortie :
uid=1001(test) gid=100(users) groups=100(users),1000(sysadmin),1001(devops),1002(management)Nous pouvons également utiliser la commande groups pour afficher les groupes dont un utilisateur est membre. Lorsqu'elle est utilisée sans arguments, elle affiche les groupes auxquels appartient l'utilisateur actuel. Si un nom d'utilisateur est fourni, elle montre les groupes auxquels cet utilisateur appartient.
$ groups testLa commande id fournit des informations utilisateur plus complètes, y compris l'ID utilisateur et l'ID du groupe principal, tandis que la commande groups est davantage axée sur la simple liste des groupes auxquels un utilisateur appartient.
Veuillez consulter le guide suivant pour connaître les différentes méthodes permettant de lister les membres d'un groupe sous Linux :
Comment lister les membres d'un groupe sous Linux
Principales différences entre les commandes id et groups
Les commandes id et groups sont toutes deux utilisées pour afficher des informations sur les groupes d'utilisateurs, mais elles présentent quelques différences clés :
- Commande
id: Affiche l’UID (Identifiant d’utilisateur), le GID (Identifiant du groupe principal) et une liste de tous les groupes auxquels l’utilisateur appartient. - Commande
groups: Affiche uniquement la liste des groupes auxquels l'utilisateur appartient. - Commande
id: Fournit des informations plus détaillées, y compris l'UID de l'utilisateur et le GID principal, ainsi que la liste des groupes. - Commande
groups: Se concentre uniquement sur la liste des groupes dont l'utilisateur est membre. - Commande
id: peut être utilisée pour obtenir des informations sur n'importe quel utilisateur du système en spécifiant le nom d'utilisateur (par exemple,id test). - Commande
groups: Par défaut, affiche les groupes de l'utilisateur actuel, mais peut aussi être utilisée pour obtenir les groupes d'un utilisateur spécifique (par exemple,groups test). - Commande
id: Peut être exécutée par n'importe quel utilisateur pour obtenir des informations sur son propre compte utilisateur. - La commande
groups: Peut également être exécutée par n'importe quel utilisateur pour obtenir des informations sur son propre appartenance à des groupes.
En résumé, la commande id fournit des informations utilisateur plus complètes, y compris l'ID utilisateur et l'ID du groupe principal, tandis que la commande groups est plus axée sur la simple liste des groupes auxquels un utilisateur appartient. Les deux commandes peuvent être utiles, selon les informations spécifiques que vous avez besoin de récupérer sur l'appartenance à des groupes d'un utilisateur.
Ajouter plusieurs utilisateurs à plusieurs groupes
Il est possible d'ajouter plusieurs utilisateurs à plusieurs groupes dans les systèmes Linux et Unix, bien que le processus puisse nécessiter quelques étapes ou un script, car il n'existe pas de commande intégrée unique qui permette directement d'ajouter plusieurs utilisateurs à plusieurs groupes simultanément.
Vous pouvez utiliser une boucle for dans le shell pour itérer sur les utilisateurs et les groupes, en ajoutant chaque utilisateur à chaque groupe. Cette méthode est utile si vous avez une liste prédéfinie d'utilisateurs et de groupes.
for user in user1 user2 user3; do
for group in group1 group2 group3; do
sudo usermod -a -G $group $user
done
doneCe script parcourt chaque utilisateur et les ajoute à chaque groupe listé. La commande usermod -a -G $group $user ajoute l'utilisateur au groupe sans le retirer des autres groupes.
Veuillez noter que vous devriez déjà avoir créé les utilisateurs et les groupes avant d'exécuter la commande ci-dessus.
Cette méthode fournit une approche flexible pour gérer les utilisateurs et les groupes en masse.
Conclusion
Apprendre à ajouter des utilisateurs à plusieurs groupes est une compétence essentielle pour tout administrateur système Linux ou Unix. Dans ce guide, nous avons discuté de la manière de créer des utilisateurs et de leur attribuer un appartenance à un groupe avec des exemples sous Linux. Nous avons également expliqué comment ajouter plusieurs utilisateurs à plusieurs groupes en même temps en utilisant un script for loop. J'espère que cela vous aidera.
Lecture Connexe:
- Comment restaurer les groupes par défaut des utilisateurs sous Linux
