Ubuntu, comme tous les autres systèmes d'exploitation de la famille GNU/Linux, est un système multi-utilisateurs.
useradd
est un programme que l'on peut lancer grâce au terminal et qui permet de créer un compte d'utilisateur. La commande useradd doit être lancée par un administrateur, il faut donc utiliser sudo.
On peut créer des scripts exploitant useradd
: le script adduser
(le même nom, mais inversé) en est un exemple, sa particularité étant d'être en mode interactif : cela signifie que le script pose une série de questions, du type "Quel est le nom du compte utilisateur à créer ?".
useradd
quant à lui fonctionne de manière non-interactive. Ceci permet de créer des comptes d'utilisateur à partir d'autres programmes, ou encore d'effectuer du traitement par lots (càd de la création automatisée des comptes utilisateurs).
La commande useradd
, lancée par un administrateur, s'utilise comme ceci :
sudo useradd identifiant_utilisateur [options]
où identifiant_utilisateur
représente l'identifiant (le login) du nouveau compte d'utilisateur à créer. Les options sont facultatives et permettent de préciser des caractéristiques supplémentaires du nouveau compte d'utilisateur.
Prenez note qu'un compte d'utilisateur sans mot de passe est inactif : aucun usager ne peut ouvrir de session avec ce compte tant qu'un mot de passe ne lui a pas été attribué. Pour ce faire, utilisez la commande passwd
pour attribuer un mot de passe après la création du compte.
Plusieurs options peuvent être fournies à useradd
. Chacune d'elle est facultative. Ces options permettent de configurer certains aspects du nouveau compte d'utilisateur dès le moment de sa création. Voici les principales options intéressantes.
option | utilité de l'option |
---|---|
--uid UID | Attribue un identifiant numérique unique pour le nouveau compte. Sans cette option, le prochain UID disponible est automatiquement choisi. |
--home CHEMIN_ABSOLU_DU_DOSSIER | Permet de choisir l'emplacement du dossier personnel du nouveau compte. Sans cette option, le dossier personnel aura le chemin /home/identifiant_utilisateur/ |
--create-home | Crée le dossier personnel de l'utilisateur. Les sous-dossiers par défaut tels que Documents, Bureau et Téléchargements seront quant à eux créés lorsque le nouvel utilisateur se connectera pour la première fois. Sans cette option, le dossier personnel n'est pas créé. |
--groups GROUPE1[,GROUPE2,GROUPE3...] | Détermine les groupes auxquels le nouveau compte doit appartenir. Il faut écrire le groupe principal de l'utilisateur dans cette liste des groupes, car l'utilisateur n'y sera pas affecté automatiquement. Si un ou plusieurs de ces groupes n'existe(nt) pas, l'exécution d'useradd sera annulée. |
--gid GROUPE | Sélectionne le groupe principal du nouveau compte (à l'aide du nom du groupe ou du GID). Il faudra également placer le nouvel utilisateur dans ce groupe, par exemple grâce à l'option --groups Sans l'option --gid , un nouveau groupe portant le même nom que l'utilisateur sera créé, et ce groupe deviendra le groupe principal de l'utilisateur. Si le groupe principal qui a été choisi n'existe pas, la commande useradd sera annulée. |
--shell CHEMIN_ABSOLU_DU_SHELL | Sélectionne le shell à utiliser pour exécuter les commandes du terminal. Le chemin du shell Bash est /bin/bash. Sans cette option, le shell par défaut est /bin/sh qui est un shell minimaliste. On lui préfèrera donc généralement le Bash ou une autre alternative. |
Consultez le manuel de useradd (en) ou le manuel de useradd (fr) pour lire davantage à propos de ces options et découvrir des options supplémentaires.
Rappel préalable : un compte créé avec useradd est inactif. Pour l'activer, il faut attribuer un password au compte.
Avec toutes les options par défaut.
sudo useradd jane sudo passwd jane
useradd
, il faudra le créer par la suite (par exemple avec la commande mkdir
/home/jane/)Pour terminer, on fait l'activation du compte en lui attribuant un mot de passe grâce à la commande passwd.
En exploitant toutes les options définies plus haut.
sudo useradd tarzan --uid 1010 --home /home/acteur/ --create-home --groups jungle,animaux --gid jungle --shell /bin/bash sudo passwd tarzan
Explication des options choisies :
useradd
Pour terminer, on fait l'activation du compte en lui attribuant un mot de passe grâce à la commande passwd.
L'attribution d'un mot de passe peut se faire grâce à la commande passwd
.
Remarque : pendant que vous tapez le mot de passe, rien ne s'affiche à l'écran. Cela est normal.
sudo passwd tarzan Entrez le nouveau mot de passe UNIX : Retapez le nouveau mot de passe UNIX : passwd : le mot de passe a été mis à jour avec succès ...
L'utilisation combinée d'useradd et mkpasswd permet de créer un compte et de lui attribuer en même temps un mot de passe. Elle autorise le mot de passe à s'affranchir du contrôle de complexité du mot de passe.
sudo apt install whois
Création du compte Mowgli dont le mot de passe est Sonnette1893
sudo useradd -m Mowgli -p $(mkpasswd Sonnette1893)
En plus des fichiers impactés par défaut, il peut être intéressant de consulter certains autres fichiers liés à useradd. Parmi ceux-ci :