adduser et addgroup : outils interactifs de création d'un compte d'utilisateur et d'un groupe d'utilisateurs
Ubuntu, comme tous les autres systèmes d'exploitation de la famille GNU/Linux, est un système foncièrement multi-utilisateurs. Cela signifie que vous n'êtes pas limité à un seul compte d'utilisateur dans le fonctionnement de votre ordinateur. Vous pouvez créer plusieurs comptes d'utilisateurs pour chaque usager de votre ordinateur, de même que pour divers usages.
adduser
est un outil en mode console permettant de créer un compte d'utilisateur de manière interactive. Il s'agit d'un script Perl propre à Debian et les distributions qui lui sont dérivées – comme Ubuntu – posant des questions à propos d'un compte à créer, puis invoque le programme usermod
en lui passant en arguments les informations récupérées. Cet outil est donc très facile et intuitif à utiliser. addgroup
est son pendant en ce qui concerne la création d'un groupe d'utilisateurs.
Seul un administrateur du système est en mesure de créer un nouveau compte ou groupe d'utilisateur.
adduser
La commande adduser
, invoquée par un compte d'administration, démarre le script de création de compte d'utilisateur :
sudo adduser identifiant
Sont ensuite demandées, une à une, les informations à affecter au nouveau compte d'utilisateur. Appuyer sur la touche [Entrée] du clavier enregistre l'information renseignée et passe à la question suivante.
Lorsque toutes les informations requises ont été récupérées, un récapitulatif est présenté à l'administrateur. Celui-ci doit alors confirmer la création du nouveau compte ou recommencer l'opération. Sur confirmation des informations, le script appelle useradd
pour créer le nouveau compte et crée un nouveau dossier personnel à partir de la structure contenue dans le répertoire /etc/skel/
.
Certaines options peuvent être précisées à adduser
, pour fournir certains paramètres supplémentaires. Consultez le manuel de adduser (en) pour lire davantage à propos de ces options.
Exemple
administrateur@ordinateur:~$ sudo adduser jdoe [sudo] password for administrateur: Adding user `jdoe' ... Adding new group `jdoe' (1001) ... Adding new user `jdoe' (1001) with group `jdoe' ... Creating home directory `/home/jdoe' ... Copying files from `/etc/skel' ... Entrez le nouveau mot de passe UNIX : (nouveau mot de passe) Retapez le nouveau mot de passe UNIX : (mot de passe répété) passwd : le mot de passe a été mis à jour avec succès Changing the user information for jdoe Enter the new value, or press ENTER for the default Full Name []: John Doe Room Number []: 333, rue des Érables Work Phone []: (555) 123-4567 Home Phone []: (555) 987-6543 Other []: john@doe.com Is the information correct? [Y/n] y administrateur@ordinateur:~$ _
Pour forcer l'utilisateur à changer de mot de passe lors de sa première connexion, vous pouvez utiliser la commande passwd. Consultez le manuel de passwd (en) pour en savoir davantage.
administrateur@ordinateur:~$ sudo passwd -e jdoe passwd : expiration du mot de passe modifiée.
addgroup
La commande addgroup
, invoquée par un compte d'administration, démarre le script de création de groupe d'utilisateurs :
sudo addgroup nom_groupe
Aucune autre information n'a à être saisie. Certaines options peuvent être précisées à addgroup
, pour fournir certains paramètres supplémentaires. Consultez le manuel de addgroup (en) pour lire davantage à propos de ces options.
Pour affecter un compte d'utilisateur à ce nouveau groupe, utilisez adduser
de la manière suivante :
sudo adduser identifiant nom_groupe
où identifiant
est un identifiant de compte d'utilisateur existant. Le compte doit déjà exister; la commande ne fonctionne pas avec un compte qui n'existe pas.
Exemple
administrateur@ordinateur:~$ sudo addgroup famille [sudo] password for administrateur: Adding group `famille' (GID 1002) ... Done. administrateur@ordinateur:~$ sudo adduser jdoe famille Adding user `jdoe' to group `famille' ... Adding user jdoe to group famille Done.
Créer un compte ou un groupe d'utilisateurs de manière non-interactive
adduser
et addgroup
sont des outils interactifs, c'est-à-dire qu'ils posent une série de questions à laquelle doit répondre l'administrateur pour que le compte ou le groupe d'utilisateurs soit créé. Ceci est intéressant pour créer un seul compte ou groupe, mais devient handicapant pour en créer plusieurs à la fois. adduser
et addgroup
ne sont pas scriptables. Pour utiliser un outil non-interactif, renseignez-vous à propos de :
Fichiers impactés
Les commandes ci-dessus modifient les fichiers systèmes suivants qu'il est évidemment fortement déconseillé de modifier manuellement :
/etc/passwd /etc/shadow /etc/group
Le fichier /etc/passwd contient les informations suivantes sur les comptes utilisateurs :
nom_utilisateur:mot_de_passe:uuid:guid:commentaire:home:shell
- nom_utilisateur correspond au login de l'utilisateur.
- mot_de_passe correspond au mot de passe de l'utilisateur remplacé par un x pour des raisons de sécurité.
- uuid correspond à l'identifiant système de l'utilisateur.
- guid correspond au groupe principal de l'utilisateur.
- commentaire (parfois appelé champ GECOS) correspond à un commentaire textuel sur l'utilisateur qui est souvent son nom réel (Prénom et Nom) et autres informations (n° bureau, téléphone..) séparées par des virgules.
- home correspond au répertoire home de l'utilisateur sur ce système, /dev/null si compte sans home (sur un serveur).
- shell correspond à l'interpréteur shell par défaut de l'utilisateur, /bin/false pour interdire l'utilisation du shell (sur un serveur).
extrait de détails du fichier /etc/passwd