Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
adduser [Le 26/10/2010, 08:04] teke précision sur l'origine |
adduser [Le 25/03/2024, 02:53] (Version actuelle) krodelabestiole ancienne révision (Le 22/02/2024, 21:18) restaurée : confusion useradd / adduser |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
---- | ---- | ||
- | ====== Créer un compte utilisateur ===== | + | ====== adduser et addgroup : outils interactifs de création d'un compte d'utilisateur et d'un groupe d'utilisateurs ====== |
- | <note tip>Il faut avoir le compte root pour créer un compte ou le supprimer.\\ | + | |
- | Commandes permettant de passer en utilisateur root : [[sudo]] et [[su]] </note> | + | |
- | Pour créer des utilisateurs dans un shell vous pouvez utiliser deux commandes qui font presque la même chose : | + | 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. |
- | * useradd : moins facile à utiliser (commande historique commune à tout les UNIX* -- GNU/Linux) | + | * //**[[utilisateur|Qu'est-ce qu'un compte d'utilisateur?]]**// |
- | * adduser : plus facile à utiliser (script perl propre à Debian) | + | |
- | Nous allons ici uniquement utiliser **adduser**. | + | ''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. |
- | * ''$sudo adduser toto'' crée le compte utilisateur "toto", avec son mot de passe, qui appartient au groupe "toto" ainsi que le répertoire "toto" dans /home plus plusieurs autres choses.\\ | + | Seul un [[sudo|administrateur du système]] est en mesure de créer un nouveau compte ou groupe d'utilisateur. |
- | * Si de plus on souhaite qu'il appartienne à un groupe existant : '' sudo adduser --ingroup NomGroupe NomNouvelUtilisateur'' | + | |
- | <note>Pour les détails de la commande : ''$man adduser''.</note> | + | |
- | * Devenez ensuite toto avec un ''$su toto''. | + | |
- | * Vous pouvez aller dans votre répertoire et créer répertoires et fichiers, les autres utilisateurs ne peuvent le faire. | + | |
- | Le contenu du dossier /etc/skel est copié dans le répertoire créé dans le /home | + | ===== adduser ===== |
+ | La commande ''adduser'', invoquée par un compte d'administration, démarre le script de création de compte d'utilisateur : <code>sudo adduser identifiant</code> | ||
+ | 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. | ||
- | Voir aussi : | + | 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/''. |
- | * [[addgroup]] | + | |
+ | Certaines options peuvent être précisées à ''adduser'', pour fournir certains paramètres supplémentaires. Consultez [[man>adduser|le manuel de adduser (en)]] pour lire davantage à propos de ces options. | ||
+ | |||
+ | ==== Exemple ==== | ||
+ | <code> | ||
+ | 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:~$ _ | ||
+ | </code> | ||
+ | |||
+ | Pour forcer l'utilisateur à changer de mot de passe lors de sa première connexion, vous pouvez utiliser la commande passwd. Consultez [[man>passwd|le manuel de passwd (en)]] pour en savoir davantage. | ||
+ | <code> | ||
+ | administrateur@ordinateur:~$ sudo passwd -e jdoe | ||
+ | passwd : expiration du mot de passe modifiée. | ||
+ | </code> | ||
+ | ===== addgroup ===== | ||
+ | La commande ''addgroup'', invoquée par un compte d'administration, démarre le script de création de groupe d'utilisateurs : <code>sudo addgroup nom_groupe</code> | ||
+ | Aucune autre information n'a à être saisie. Certaines options peuvent être précisées à ''addgroup'', pour fournir certains paramètres supplémentaires. Consultez [[man>addgroup|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 : <code>sudo adduser identifiant nom_groupe</code> 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 ===== | ||
+ | <code> | ||
+ | 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. | ||
+ | </code> | ||
+ | ===== 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 : | ||
+ | * [[useradd]] pour les comptes d'utilisateur | ||
+ | * [[groupadd]] pour les groupes d'utilisateurs | ||
+ | |||
+ | ===== Fichiers impactés ===== | ||
+ | Les commandes ci-dessus modifient les fichiers systèmes suivants qu'il est évidemment fortement déconseillé de modifier manuellement : | ||
+ | <code>/etc/passwd | ||
+ | /etc/shadow | ||
+ | /etc/group</code> | ||
+ | Le fichier /etc/passwd contient les informations suivantes sur les comptes utilisateurs : | ||
+ | <code>nom_utilisateur:mot_de_passe:uuid:guid:commentaire:home:shell</code> | ||
+ | * 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é [[wpfr>Champ_Gecos|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 [[http://dev.petitchevalroux.net/linux/format-etc-passwd-linux.217.html|détails du fichier /etc/passwd]] | ||
+ | Joy boy is back | ||
+ | ===== Voir aussi ===== | ||
+ | * **(fr)** [[:tutoriel:gestion_utilisateurs_et_groupes_en_ligne_de_commande|Tutoriel gestion des utilisateurs et groupes en ligne de commande]] |