| ADDUSER(8) | System Manager's Manual | ADDUSER(8) |
adduser, addgroup – Ajouter ou manipuler des utilisateurs ou des groupes
adduser |
[--add-extra-groups] [--allow-all-names] [--allow-bad-names] [--comment commentaire] [--conf fichier] [--debug] [--disabled-login] [--disabled-password] [--firstgid ID] [--firstuid ID] [--gid ID] [--home rép] [--ingroup groupe] [--lastgid ID] [--lastuid ID] [--no-create-home] [--shell IDC] [--quiet] [--uid ID] [--verbose] [--stdoutmsglevel prio] [--stderrmsglevel prio] [--logmsglevel prio] utilisateur |
adduser |
--system [--comment commentaire] [--conf fichier] [--debug] [--gid ID] [--group] [--home rép] [--ingroup groupe] [--no-create-home] [--shell IDC] [--uid ID] [--quiet] [--verbose] [--stdoutmsglevel prio] [--stderrmsglevel prio] [--logmsglevel prio] utilisateur |
adduser |
--group [--conf fichier] [--debug] [--firstgid ID] [--gid ID] [--lastgid ID] [--quiet] [--verbose] [--stdoutmsglevel prio] [--stderrmsglevel prio] [--logmsglevel prio] groupe |
addgroup |
[--conf fichier] [--debug] [--firstgid ID] [--gid ID] [--lastgid ID] [--quiet] [--verbose] [--stdoutmsglevel prio] [--stderrmsglevel prio] [--logmsglevel prio] groupe |
addgroup |
--system [--gid ID] [--conf fichier] [--quiet] [--verbose] [--stdoutmsglevel prio] [--stderrmsglevel prio] [--logmsglevel prio] groupe |
adduser |
[--conf fichier] [--debug] [--quiet] [--verbose] [--stdoutmsglevel prio] [--stderrmsglevel prio] [--logmsglevel prio] utilisateur groupe |
adduser |
--help |
adduser |
--version |
adduser et addgroup ajoutent des utilisateurs ou des groupes au système en fonction des options fournies en ligne de commande et des informations contenues dans le fichier de configuration /etc/adduser.conf. Ce sont des interfaces plus spécifiques à Debian que les programmes de bas niveau tels que useradd, groupadd et usermod qui sont des programmes plus indépendants de la distribution. adduser et addgroup choisissent par défaut des valeurs d’UID ou de GID conformes à la charte Debian, créant un répertoire personnel de configuration basique (/etc/skel/),exécutant un script sur mesure et ayant d'autres fonctionnalités.
adduser et addgroup sont conçus pour se conformer à la charte, aidant les responsables de paquet et les administrateurs locaux à créer des comptes locaux sur le système de la manière que Debian s'attend à ce que cela soit fait, et prenant en charge les modifications probables de spécifications de la politique de Debian. adduser --system porte une attention spéciale à ne nécessiter qu’un seul appel dans les scripts du responsable de paquet sans aucune enveloppe conditionnelle, suppression d’erreur ou autre échafaudage.
adduser respecte la distinction entre des groupes et utilisateurs système alloués dynamiquement et des comptes utilisateur alloués dynamiquement qui est documentée dans la Charte Debian, chapitre 9.2.2.
Pour une liste complète et des explications sur toutes les options, consulter la section OPTIONS.
adduser et addgroup peuvent être exécutés dans un des cinq modes suivants :
Lorsqu'il est exécuté avec un seul paramètre qui n'est pas une option et sans les options --system ou --group, adduser ajoute un utilisateur normal. C’est-à-dire un compte utilisateur alloué dynamiquement dans le sens de la Charte Debian. Cela est communément appelé dans adduser un utilisateur non-système.
adduser choisira le premier UID disponible dans l’intervalle défini par FIRST_UID et LAST_UID dans le fichier de configuration. L’intervalle peut être écrasé avec les options --firstuid et --lastuid. Enfin, l'UID peut être entièrement défini manuellement avec l'option --uid.
Par défaut, chaque utilisateur se voit attribuer un groupe correspondant avec le même nom. Cela est appelé communément groupe d’utilisateurs et permet aux répertoires éditables de groupe d’être facilement entretenus en plaçant les utilisateurs appropriés dans le nouveau groupe, réglant le bit set-group-ID dans le répertoire et assurant que tous les utilisateurs aient un masque de création de fichier (« umask ») de 002.
Pour un groupe d’utilisateurs, adduser choisira le premier GID dans l’intervalle défini par FIRST_GID et LAST_GID dans le fichier de configuration. L’intervalle peut être écrasé avec les options --firstgid et --lastgid. Enfin, le GID peut être entièrement défini manuellement avec l'option --gid.
Les interactions entre USERS_GID, USERS_GROUP et USERGROUPS sont expliquées en détail dans adduser.conf(5).
Le nouveau groupe primaire d’utilisateur peut être aussi outrepassé à partir de la ligne de commande avec les options --gid ou --ingroup pour régler le groupe respectivement par ID ou par nom. De plus, les utilisateurs peuvent être ajoutés dans un ou plusieurs groupes supplémentaires définis comme EXTRA_GROUPS soit en définissant ADD_EXTRA_GROUPS à 1 dans le fichier de configuration, soit en passant --add-extra-groups sur la ligne de commande.
adduser copiera les fichiers de /etc/skel dans le répertoire personnel et demandera un champ de commentaire et un mot de passe si ces fonctions n’ont pas été désactivées ou écrasées à partir de la ligne de commande.
UID, commentaire, répertoire personnel et interpréteur de commandes peuvent être prédéterminés avec les options UID_POOL et GID_POOL, documentées dans adduser.conf(5).
Lorsqu'il est appelé avec un paramètre non option et avec l'option --system, adduser ajoute un utilisateur système dynamiquement alloué, souvent raccourci en utilisateur système dans le contexte du paquet adduser.
adduser choisira le premier UID disponible dans l’intervalle défini par FIRST_SYSTEM_UID et LAST_SYSTEM_UID dans le fichier de configuration. Cela peut être écrasé avec l’option --uid.
Par défaut, les utilisateurs système se voient affectés du groupe nogroup comme groupe primaire. Pour affecter un groupe existant comme groupe primaire, utilisez les options --gid ou --ingroup. Si l’option --group est indiquée et qu’un groupe de même nom n’existe pas déjà, il est créé avec le même ID.
Si aucun répertoire personnel n’est précisé, le répertoire personnel par défaut pour un nouvel utilisateur système est /nonexistent. Ce répertoire ne devrait jamais exister dans un système Debian, et adduser ne le créera jamais automatiquement.
If a home directory is specified with the --home option, and the directory does already exist (for example, if the package ships with files in that directory), adduser silently does not set the owner of the directory to the newly created user. Setting the owner might override a decision of the local admin, and reporting the fact would break adduser's silence during package installation. If you use adduser --home in your package's maintainer scripts, you might want to issue an explicit recursive chown for the home directory after the call to adduser.
À moins qu’un interpréteur de commandes ne soit explicitement défini avec l’option --shell, le nouvel utilisateur système aura l’interpréteur indiqué dans /usr/sbin/nologin. adduser --system ne définit pas de mot de passe pour le nouveau compte. Les fichiers de configuration de patron (/etc/skel) ne sont pas copiés.
Les autres options se comportent comme pour la création d’un utilisateur normal. Les fichiers référencés par UID_POOL et GID_POOL agissent aussi.
Si adduser est appelé avec l'option --group et sans l'option --system, ou si de la même manière addgroup est appelé, un groupe d’utilisateurs sera ajouté.
Un groupe système dynamiquement alloué, souvent abrégé en groupe système dans le contexte du paquet adduser, sera créé si adduser --group ou addgroup sont appelés avec l’option --system.
Un GID sera choisi dans l’intervalle respectif indiqué pour les GID dans le fichier de configuration (FIRST_GID, LAST_GID, FIRST_SYSTEM_GID, LAST_SYSTEM_GID). Pour contourner ce mécanisme, il est possible d’indiquer le GID en utilisant l’option --gid.
Pour les groupes non-système, l’intervalle indiqué dans le fichier de configuration peut être remplacé avec les options --firstgid et --lastgid.
Le groupe est créé sans aucun membre.
Lorsqu'il est appelé avec deux paramètres non-options, adduser ajoutera un utilisateur existant à un groupe existant.
Différents modes de adduser permettent différentes options. Si aucun mode autorisé n’est listé pour une option, tous les modes sont acceptés.
Des versions courtes pour certaines options peuvent exister pour des raisons historiques. Elles continueront d’être gérées, mais sont retirées de la documentation. Il est conseillé de migrer vers les versions longues des options.
Historiquement, adduser(8) et addgroup(8) imposent la conformité à la norme IEEE Std 1003.1-2001 qui ne permet que les caractères suivants dans les noms de groupe ou d'utilisateur : lettres, chiffres, tirets de soulignement (_), points, arobases (@) et signe moins (-). Le nom ne peut commencer par un signe moins ou @. Le signe « $ » est autorisé à la fin des noms d'utilisateur pour autoriser les comptes typiques de machine Samba.
Les réglages par défaut pour NAME_REGEX et SYS_NAME_REGEX permettent aux noms d’utilisateur de contenir des lettres, des chiffres, des tirets (-), des tirets de soulignement (_). Le nom doit commencer par une lettre (ou un trait de soulignement pour les utilisateurs système).
La politique la moins restrictive, disponible en utilisant l’option --allow-all-names, fait simplement les mêmes vérifications que useradd(8). Veuillez noter que les vérifications d’useradd sont devenues un peu plus restrictives dans Debian 13.
Modifier le comportement par défaut présente le risque de créer des noms peu clairs ou trompeurs. À utiliser avec précaution.
adduser utilise une journalisation complète et configurable pour adapter sa verbosité aux besoins de l’administrateur du système.
Chaque message affiché par adduser a une valeur de priorité assignée par les auteurs. Elle ne peut pas être changée au moment de l’exécution. Les priorités disponibles sont crit, error, warning, info, debug et trace.
Si vous estimez qu’un message n’a pas la bonne priorité, veuillez faire un rapport de bogue.
À chaque création de message, le code décide d’afficher celui-ci sur la sortie standard, la sortie d’erreur ou syslog. Cela est principalement et indépendamment contrôlé par les réglages de configuration STDOUTMSGLEVEL, STDERRMSGLEVEL et LOGMSGLEVEL. Pour des besoins de test, ces réglages peuvent être outrepassés sur la ligne de commande.
Seuls les messages ayant une priorité égale ou supérieure au niveau respectif de message sont journalisés sur le média de sortie respectif. Un message écrit sur la sortie d’erreur n’est pas écrit une seconde fois sur la sortie standard.
Ou pour plein d'autres raisons pas encore documentées qui sont affichées sur la console. Vous pouvez alors accroître le niveau de journalisation pour rendre adduser plus bavard.
adduser a besoin des privilèges du superutilisateur et propose, à l’aide de l’option de ligne de commande --conf, d’utiliser un fichier de configuration différent. Il ne faut pas utiliser sudo(8) ou des outils similaires pour donner des privilèges partiels à adduser avec des paramètres restrictifs de ligne de commande. Cela est facile à contourner et pourrait permettre de créer des comptes arbitraires. Si vous voulez cela, écrivez votre propre script d’enveloppe en fournissant les privilèges pour exécuter ce script.
Malheureusement, le terme compte système (« system account ») souffre d’un double emploi dans Debian. Il signifie un compte pour le système Debian réel, distinct d'un compte d’application qui peut exister dans la base de données d’utilisateurs de quelques applications fonctionnant dans Debian. Un compte système dans cette définition a le pouvoir de se connecter sur le système réel, possède un UID, peut être membre de groupes système, peut avoir ses propres fichiers et processus. La Charte Debian, dans son chapitre 9.2.2, fait une distinction entre les utilisateurs et groupes système dynamiquement alloués et les comptes d’utilisateur dynamiquement alloués, signifiant dans les deux cas des instances spéciales de comptes système. Une attention spéciale doit être apportée pour ne pas faire de confusion de terminologie. Puisque adduser et deluser(8) ne s’adressent jamais aux comptes d’application et que toute chose dans ce paquet concerne ici les comptes système, l’utilisation des termes compte utilisateur et compte système n’est réellement pas ambigu dans le contexte de ce paquet. Pour la clarté, ce document utilise la définition compte ou groupe système local si la distinction pour comptes d’application ou comptes dans un service d’annuaire est nécessaire.
adduser avait l’idée d’être le frontal universel pour les différents services d’annuaire pour la création et la suppression des comptes normaux et système dans Debian depuis les années 1990. Cette idée a été en abandonnée en 2022. Les raisons pour cela sont que de toutes façons, en pratique, un petit système serveur ne va pas avoir de droit d’écriture pour un service d’annuaire englobant toute l’entreprise, que les paquets installés localement sont durs à gérer avec les comptes système contrôlés de manière centrale, que les services d’annuaire d’entreprise ont leurs propres processus de gestion et qu’il est peu probable que la personne en charge de adduser soit assez puissante pour écrire ou gérer la pléthore de services d’annuaire qui ont besoin d’une prise en charge.
adduser se limitera à être une couche de mise en conformité pour la gestion de comptes système locaux, en utilisant les outils du paquet passwd pour le travail réel.
L’utilisation non cohérente de terminologie autour du terme compte système dans la documentation et le code est un bogue. Merci de rapporter cela et nous permettre d’améliorer cette documentation.
adduser fait bien attention d’être directement utilisable dans les scripts des responsables de Debian, sans enveloppe conditionnelle, ni de suppression d’erreurs ou autres échafaudages. La seule chose dont le responsable de paquet devrait avoir besoin pour coder est une vérification de la présence de l’exécutable dans le script postrm. Les responsables d’adduser considèrent que le besoin d’échafaudage est un bogue et encouragent les responsables de paquets concernés de Debian à déclarer un bogue à l’encontre du paquet adduser dans ce cas.
adduser.conf(5), deluser(8), groupadd(8), useradd(8), usermod(8), /usr/share/doc/base-passwd/users-and-groups.html sur n’importe quel système Debian, Debian Policy 9.2.2, RFC8264 « PRECIS Framework : Preparation, Enforcement, and Comparison of Internationalized Strings in Application Protocols », RFC8265 « PRECIS Representing Usernames and Passwords", https://wiki.debian.org/UserAccounts.
Ce document est une traduction réalisée par Christophe Sauthier <christophe@sauthier.com>(2002), reprise avec po4a par Nicolas FRANÇOIS (2004-2008) et mise à jour par David Prévot <david@tilapin.org> (2010) et Jean-Paul Guillonneau <guillonneau.jeanpaul@free.fr> (2016-2025).
L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité.
La version anglaise de ce document est toujours consultable en ajoutant l'option « -L C » à la commande man.
N'hésitez pas à signaler à l'auteur ou à la liste de traduction <debian-l10n-french@lists.debian.org>, selon le cas, toute erreur dans cette page de manuel.
| Debian GNU/Linux |