Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
useradd [Le 10/09/2016, 00:25]
81.242.184.213 [Exemples]
useradd [Le 25/07/2024, 00:47] (Version actuelle)
193.32.126.218 [Activation du compte : choix d'un mot de passe pour l'utilisateur nommé "tarzan"]
Ligne 4: Ligne 4:
  
  
-====== useradd : outils non-interactifs de création d'un compte ​d'utilisateur ======+====== useradd : programme pour la création d'un compte utilisateur ​(de façon non-interactive) ​======
  
-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.+Ubuntu, comme tous les autres systèmes d'​exploitation de la famille GNU/Linux, est un système multi-[[:utilisateur|utilisateurs]]
  
- Avant d'aller plus loin : //​**[[:​utilisateur|qu'est-ce qu'un compte d'​utilisateur?]]**//+''​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]].
  
-''​useradd''​ est un outil en mode console permettant de créer un compte d'​utilisateur de manière non-interactive. Ceci permet donc de créer des comptes d'​utilisateur à partir d'​autres programmes ou d'​effectuer du traitement par lots. On peut créer des scripts exploitant ''​useradd''​ : le script ''​[[:​adduser]]''​ en est un exemple, ​et il offre la facilité ​d'​être en mode interactif.  +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 ?".
- +
- +
-Seul un [[:sudo|administrateur ​du système]] ​est en mesure de créer un nouveau ​compte ​ou groupe d'utilisateur.+
  
 +''​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). ​
  
  
 ===== Utilisation ===== ===== Utilisation =====
-L'​outil ​''​useradd'', ​invoqué ​par un compte d'​administration, s'​utilise ​ainsi : <​code>​sudo useradd identifiant_utilisateur [options]</​code>​ où ''​identifiant_utilisateur''​ représente l'​identifiant 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. ​+La commande ​''​useradd'', ​lancée ​par un administrateur, s'​utilise ​comme ceci : <​code>​sudo useradd identifiant_utilisateur [options]</​code>​ 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 l'​option ''​%%--passwd%%''​ lors de la création du compte (voir ci-dessous) ou utilisez la commande ''​[[:​tutoriel/​console_commandes_de_base#​passwd|passwd]]''​ pour attribuer un mot de passe après la création du compte.+:!: 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 ''​[[:​tutoriel/​console_commandes_de_base#​passwd|passwd]]''​ pour attribuer un mot de passe après la création du compte.
  
 ==== Options ==== ==== Options ====
-Plusieurs options peuvent être passées ​à ''​useradd''​. Chacune d'elle est facultative. ​Elles permettent ​d'​attribuer des paramètres au nouveau compte d'​utilisateur dès le moment de sa création. Voici les principales options intéressantes.+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 ^ ^ option ^ utilité de l'​option ^
-| ''​%%--uid UID%% ''​ | Précise ​un identifiant numérique unique ​à affecter au nouveau compte. \\ Sans cette option, le prochain UID disponible est automatiquement choisi.| +| ''​%%--uid UID%% ''​ | Attribue ​un identifiant numérique unique ​pour le nouveau compte. \\ Sans cette option, le prochain UID disponible est automatiquement choisi.| 
-| ''​%%--password MOT_DE_PASSE_CRYPTÉ%%''​ | Définit le mot de passe à affecter au nouveau compte. :!: **Le mot de passe inscrit ici doit être préalablement crypté**. Pour ce faire, utilisez ​l'outil ''​mkpasswd''​ (voir les exemples ci-dessous). \\ Sans cette option, il faudra définir le mot de passe par après, avec la commande ''​passwd''​. | +| ''​%%--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/''​ | 
-| ''​%%--home CHEMIN_ABSOLU_DU_DOSSIER%%''​ | Spécifie un emplacement ​précis pour le dossier personnel du nouveau compte. \\ Sans cette option, le dossier personnel ​est créé automatiquement à l'​emplacement ​''/​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éé.  ​|  
-| ''​%%--create-home%%''​ | Crée le dossier personnel de l'​utilisateur, si il n'​existe pas encore. Les sous-répertoires ​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 répertoire home 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%%''​| ​Précise ​le groupe principal du nouveau compte (à l'​aide ​d'un identifiant de groupe ou d'​un ​GID). Il restera à 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. | +| ''​%%--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. | 
-| ''​%%--groups GROUPE1[,​GROUPE2,​GROUPE3...]%%''​ | Précise des groupes supplémentaires auxquels ​le nouveau compte doit être affecté. \\ Ces groupes doivent existercar sinon l'​exécution d'​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 optionle 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 [[http://​manpages.ubuntu.com/​useradd|le manuel de useradd (en)]] ou [[http://​pwet.fr/​man/​linux/​administration_systeme/​useradd|le manuel de useradd (fr)]] pour lire davantage à propos de ces options et découvrir des options supplémentaires. Consultez [[http://​manpages.ubuntu.com/​useradd|le manuel de useradd (en)]] ou [[http://​pwet.fr/​man/​linux/​administration_systeme/​useradd|le manuel de useradd (fr)]] pour lire davantage à propos de ces options et découvrir des options supplémentaires.
  
-==== Exemples ==== +===== Exemples ​d'​utilisation ===== 
-===Création simple de l'utilisateur nommé ​"tarzan"=== +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.+==== Création simple de l'utilisatrice nommée ​"jane" ​==== 
 +Avec toutes les options par //défaut//.
 <​code>​ <​code>​
-administrateur@ordinateur:​~$ ​sudo useradd ​tarzan+sudo useradd ​jane 
 + 
 +sudo passwd jane
 </​code>​ </​code>​
 +  * Nom d'​utilisatrice:​ jane
 +  * ID de l'​utilisatrice (UID) : automatiquement choisi par le système d'​exploitation
 +  * Dossier personnel de l'​utilisatrice : /home/jane/
 +  * Ce dossier personnel n'est pas créé par ''​useradd'',​ il faudra le créer par la suite (par exemple avec la commande ''​mkdir''​ /​home/​jane/​)
 +  * L'​utilisatrice est ajoutée au groupe suivant : jane (par défaut, Linux crée un groupe portant le même nom que le nouvel utilisateur)
 +  * Groupe principal de l'​utilisatrice : jane
 +  * Chemin du shell pour les commandes du terminal : /bin/sh
 +Pour terminer, on fait l'//​activation du compte// en lui attribuant un mot de passe grâce à la commande passwd.
  
-===Création avancée de l'utilisatrice nommée ​"jane"=== +==== Création avancée de l'utilisateur nommé ​"tarzan"==== 
-En exploitant toutes les options définies plus haut. Notez que le cryptage du mot de passe, grâce à la commande ''​mkpasswd'',​ doit se faire avant de créer l'​utilisateur. Le mot de passe avant cryptage est "​bleublancrouge"​. Le mot de passe après cryptage est "​zYpohSJqUpWiw"​. La commande mkpassword nécessite l'​option "​-H"​ et son argument "​md5",​ car useradd fonctionne avec le type de cryptage md5. Pour pouvoir utiliser ''​mkpasswd'',​ vous devrez avoir préalablement [[:​tutoriel:​comment_installer_un_paquet|installé le paquet]] ''​whois'',​ par exemple grâce à la commande ''​sudo apt-get install whois''​+En exploitant toutes les options définies plus haut.
 <​code>​ <​code>​
-user@ordinateur:​~$ mkpasswd -H md5 bleublancrouge +sudo useradd ​tarzan ​--uid 1010 --home /home/acteur/ --create-home ​--groups jungle,​animaux ​--gid jungle ​--shell /bin/bash 
-zYpohSJqUpWiw + 
-user@ordinateur:​~$ ​sudo useradd ​jane --uid 1010 --password zYpohSJqUpWiw ​--home /media/​Windows/Users/Jane --create-home --gid groupedelajungle ​--groups groupedelajungle,​familledetarzan ​+sudo passwd tarzan
 </​code>​ </​code>​
 +{{:​administration:​useradd_exemple.png|}}
  
-==== Fichiers associés ==== +Explication des options choisies : 
-En plus [[:​adduser#​fichiers_impactes|des fichiers impactés par défaut]], il peut être intéressant de modifier ​certains fichiers.  +  * Nom d'​utilisateur : tarzan 
-<note important>​L'​impact de la modification de ces fichiers systèmes peut-être important, vérifiez bien d'​abord et n'​hésitez pas à faire une copie avant de les modifierIl est à noter que des paramètres de certains fichiers (login.defs par exemple) sont obsolètes et remplacés par d'​autres.</​note>​+  * ID de l'​utilisateur (UID) : 1010 
 +  * Dossier personnel de l'​utilisateur : /​home/​acteur/​ 
 +  * Ce dossier personnel est créé par ''​useradd''​ 
 +  * L'​utilisateur est ajouté aux deux groupes suivants : jungle et animaux 
 +  * Groupe principal de l'​utilisateur : jungle 
 +  * Chemin du shell pour les commandes du terminal : /bin/bash 
 +Pour terminer, on fait l'//​activation du compte// en lui attribuant un mot de passe grâce à la commande passwd. 
 + 
 +==== Activation du compte : choix d'un mot de passe pour l'​utilisateur nommé "​tarzan"​ ==== 
 +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. 
 +<​code>​ 
 +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 ... 
 +</​code>​ 
 +==== Création d'un compte avec mot de passe ==== 
 +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. 
 +<note warning>​Avec cette méthode le mot de passe choisi peut être moins sûr que celui que passwd vous autorise. à vos risques et périls !</​note>​ 
 +<​note>​Pour utiliser mkpassw, il est généralement nécessaire d'​installer le paquet whois 
 +<​code>​sudo apt install whois</​code></​note>​ 
 +Création du compte Mowgli dont le mot de passe est Sonnette1893 
 +<​code>​ 
 +sudo useradd -m Mowgli -p $(mkpasswd Sonnette1893) 
 +</​code>​ 
 +<note tip>​Pourquoi utiliser mkpasswd à l'​intérieur de la commande useradd plutôt que de copier la sortie de la commande mkpasswd ? Tout simplement car le chiffrement du mot de passe utilise souvent le caractère $, ce qui fait que le shell interprète ce qui suit comme un nom de variable. Cet écueil est évité de cette façon. On peut évidemment faire autrement, comme bien souvent chez linux.</​note>​ 
 +===== Fichiers associés ​===== 
 +En plus [[:​adduser#​fichiers_impactes|des fichiers impactés par défaut]], il peut être intéressant de consulter ​certains ​autres ​fichiers ​liés à useradd
 Parmi ceux-ci : Parmi ceux-ci :
   * /​etc/​default/​useradd   * /​etc/​default/​useradd
   * /​etc/​login.defs (man login.defs pour plus d'​informations)   * /​etc/​login.defs (man login.defs pour plus d'​informations)
   * /etc/pam.d   * /etc/pam.d
- 
-===== Aller plus loin ===== 
-Pour l'​ajout de plusieurs utilisateurs,​ il peut-être intéressant d'​utiliser la commande [[:​newusers]] 
 ===== Voir aussi ===== ===== Voir aussi =====
   * **(fr)** [[:​tutoriel/​gestion_utilisateurs_et_groupes_en_ligne_de_commande|Tutoriel gestion des utilisateurs et groupes en ligne de commande]]   * **(fr)** [[:​tutoriel/​gestion_utilisateurs_et_groupes_en_ligne_de_commande|Tutoriel gestion des utilisateurs et groupes en ligne de commande]]
  • useradd.1473459956.txt.gz
  • Dernière modification: Le 10/09/2016, 00:25
  • par 81.242.184.213