Je veux pouvoir me connecter avec des paramètres différents, tout en restant le même "utilisateur". J'ai donc ajouté un deuxième utilisateur avec le même UID/GUID, mais un répertoire de départ différent et maintenant, lors du démarrage d'Ubuntu, le système se bloque. Si je supprime le deuxième utilisateur des fichiers passwd
et shadow
, le système démarre parfaitement.
Il est généralement déconseillé d’éditer manuellement les fichiers _/etc/passwd
_ et _/etc/shadow
_. Je recommande d'utiliser les outils système fournis pour cela. À côté de cela, même si vous pouvez faire partager le même GUID avec un autre utilisateur, l'UID doit être unique pour chaque utilisateur. Par conséquent, le démarrage échouera probablement avec Linux empêchant ainsi le démarrage des applications nécessaires et/ou en cas d'échec des applications dans lesquelles les UID seraient uniques.
Une meilleure approche de deux utilisateurs partageant un répertoire utilise la gestion de groupe pour le faire. Voir la documentation sur la gestion des utilisateurs ou parcourir Ask Ubunt pour les guides possibles:
Cependant, vous pouvez créer un utilisateur en émettant simplement la commande suivante:
_Sudo useradd -U -m -G <additional groups here> <user-name>
_
Cela va ajouter un utilisateur à votre système qui fonctionnera. Explication de la ligne ci-dessus de man 8 useradd
(extrêmement réduit aux seules options les plus courantes, pour une vue d'ensemble complète, voir la page de manuel):
LES OPTIONS
_The options which apply to the useradd command are: -c, --comment COMMENT Any text string. It is generally a short description of the login, and is currently used as the field for the user's full name. -g, --gid GROUP The group name or number of the user's initial login group. The group name must exist. A group number must refer to an already existing group. If not specified, the behavior of useradd will depend on the USERGROUPS_ENAB variable in /etc/login.defs. If this variable is set to yes (or -U/--user-group is specified on the command line), a group will be created for the user, with the same name as her loginname. If the variable is set to no (or -N/--no-user-group is specified on the command line), useradd will set the primary group of the new user to the value specified by the GROUP variable in /etc/default/useradd, or 100 by default. -G, --groups GROUP1[,GROUP2,...[,GROUPN]]] A list of supplementary groups which the user is also a member of. Each group is separated from the next by a comma, with no intervening whitespace. The groups are subject to the same restrictions as the group given with the -g option. The default is for the user to belong only to the initial group. -k, --skel SKEL_DIR The skeleton directory, which contains files and directories to be copied in the user's home directory, when the home directory is created by useradd. This option is only valid if the -m (or --create-home) option is specified. If this option is not set, the skeleton directory is defined by the SKEL variable in /etc/default/useradd or, by default, /etc/skel. If possible, the ACLs and extended attributes are copied. -m, --create-home Create the user's home directory if it does not exist. The files and directories contained in the skeleton directory (which can be defined with the -k option) will be copied to the home directory. By default, if this option is not specified and CREATE_HOME is not enabled, no home directories are created. -M Do no create the user's home directory, even if the system wide setting from /etc/login.defs (CREATE_HOME) is set to yes. -s, --Shell SHELL The name of the user's login Shell. The default is to leave this field blank, which causes the system to select the default login Shell specified by the Shell variable in /etc/default/useradd, or an empty string by default. -U, --user-group Create a group with the same name as the user, and add the user to this group. The default behavior (if the -g, -N, and -U options are not specified) is defined by the USERGROUPS_ENAB variable in /etc/login.defs.
_
Donc _-U
_ créera un groupe d'utilisateurs similaire au nom d'utilisateur ayant le GUID correspondant à l'UID de l'utilisateur. _-m
_ créera le répertoire de base des utilisateurs dans _/home/<user-name>
_ et _-G
_ vous permet d'indiquer des groupes supplémentaires auxquels cet utilisateur doit appartenir. Vous pouvez aussi ajouter des groupes plus tard. Les groupes qu'Ubuntu ajoute à l'utilisateur principal sont adm
, cdrom
, Sudo
, dip
, plugdev
, lpadmin
et sambashare
. Pour ajouter des groupes ultérieurement, vous pouvez utiliser la commande suivante:
_Sudo usermod -aG <group-or groups> <user-name>
_
Enfin, votre utilisateur devrait avoir un mot de passe que vous pouvez définir avec:
_Sudo passwd <username>
_
Ceci met fin au processus de création d’utilisateur dans un terminal.
Il existe également une commande combinée appelée adduser
qui automatise une partie du processus mentionné ci-dessus. Pour son utilisation, consultez man 8 adduser
.