{{tag>tutoriel système utilisateur shell}} ---- ====== Gestion des utilisateurs et groupes en ligne de commande ====== Ce tutoriel recense les commandes de gestion simple des utilisateurs et groupes en ligne de commande. ===== Pré-requis ===== La gestion des utilisateurs et des groupes est une activité **très** sensible pour la sécurité et la stabilité de votre système. Assurez-vous de savoir ce que vous faites avant de commencer. * Disposer des [[:sudo|droits d'administration]]. * Avoir lu la documentation sur les utilisateurs et groupes * Être initié à la ligne de commande ===== Lister les utilisateurs et groupes ===== Afficher la liste des utilisateurs : compgen -u ou cut -d: -f1 /etc/passwd Afficher la liste des groupes compgen -g ou cut -d: -f1 /etc/group ===== Créations ===== ==== Ajouter un utilisateur au système ==== sudo useradd nom_utilisateur ==== Ajouter un groupe au système ==== sudo groupadd nom_groupe ===== Suppressions ===== ==== Suppression d'un utilisateur ==== sudo userdel nom_utilisateur Malgré la suppression du compte, le répertoire personnel est conservé. L'ensemble des données qui y sont stockées est donc conservé. Par conséquent n'importe quel nouvel utilisateur créé ou ajouté ultérieurement avec le même UID/GID que le précédent propriétaire aura alors accès à ce répertoire et aux fichiers qui y sont stockés. La suppression du répertoire personnel doit donc être effectuée manuellement. Si le répertoire est /home/utilisateur, la commande suivante fera le travail : sudo rm -R /home/utilisateur # attention rm est une commande dangereuse !! attention à la syntaxe ==== Suppression d'un groupe ==== sudo groupdel nom_groupe ===== Ajouts ===== ==== Ajouter un utilisateur à un groupe ==== sudo adduser nom_utilisateur nom_groupe Si vous créez un nouveau groupe et ajoutez votre compte utilisateur à ce groupe, pour que les droits soient effectifs, il faut fermer/ré-ouvrir votre session pour éviter le "permission denied" alors que le groupe a bien les [[:droits]] //rwx// ((https://askubuntu.com/a/455442)), tapez la commande id pour le constater ===== Modifications ==== ==== Modifier l'identifiant d'un compte d'utilisateur ==== Cette modification s'effectue à partir d'un autre compte administrateur que le compte modifié. Aucune session du compte modifié ne doit être active. sudo usermod --login identifiant_nouveau_compte_a_modifier --home /home/identifiant_nouveau_compte_a_modifier --move-home identifiant_initial_compte_a_modifier //Voir [[tutoriel:changer_un_identifiant_de_compte|Comment changer l'identifiant d'un compte d'utilisateur ?]]// ==== Modifier l'identifiant de l'unique compte administrateur ==== La modification ne peut pas s'effectuer pendant que la session est active. Il convient donc de redémarrer l'ordinateur en mode de récupération (recovery mode) puis d'ouvrir une session en mode super-utilisateur. Les commandes à saisir sont les suivantes : usermod --login nouvel_identifiant --home /home/nouvel_identifiant --move-home ancien_identifiant exit Si l'erreur « impossible de verrouiller /etc/passwd » apparaît, c'est probablement que les fichiers sont en lecture seule. Dans ce cas, exécuter mount -o remount,rw / et saisissez de nouveau la commande précédente. Choisissez ensuite pour poursuivre le chargement normal d'Ubuntu. ==== Modification de l'identifiant de groupe ==== La commande doit être saisie par un administrateur mais ne nécessite pas la clôture du compte concerné. sudo groupmod --new-name nouveau_nom nom_actuel ==== Verrouillage d'un compte ==== Un employé ou stagiaire de l'entreprise parti, un enfant trop addict à un jeu… il peut être utile de verrouiller un compte:\\ Avec les [[:sudo|droits d'administration]] usermod --expiredate 1 nom_utilisateur (c'est le chiffre UN)\\ Pour le réactiver usermod --expiredate "" nom_utilisateur ==== Modification du mot de passe ==== * Modification du mot de passe de l'utilisateur courant : la commande passwd usr@lepc:~$ passwd Changement du mot de passe pour usr. Mot de passe UNIX (actuel) : 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 * Modification du mot de passe d'un autre utilisateur (réservé à root((administrateur système))) su --login -c "passwd autre_utilisateur" Éviter d'utiliser la méthode ci-dessus même si elle vous permet de devenir root en utilisant votre mot de passe administrateur (directement après avoir utilisé ''passwd'' faites ''exit''). usr@lepc:~$ sudo -i [sudo] Mot de passe de usr : root@lepc:~# passwd autreutilisateur 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 root@lepc:~# exit exit usr@lepc:~$ ===== Voir aussi ===== * **(fr)** [[:adduser|adduser]] * **(fr)** [[:useradd|useradd]] * **(fr)** [[http://manpages.ubuntu.com/manpages/gutsy/fr/man8/groupmod.8.html|groupmod]] * **(fr)** [[http://guide.ubuntu-fr.org/server/user-management.html|gestion des utilisateurs]] sur le guide ubuntu-fr * **(fr)** [[http://dev.petitchevalroux.net/linux/format-etc-passwd-linux.217.html|comprendre le fichier /etc/passwd]] * **(en)** [[http://manpages.ubuntu.com/manpages/karmic/man8/newusers.8.html|Création de nouveaux utilisateurs en batch]] * **(fr)** [[:tutoriel/changer_un_identifiant_de_compte|Changer un identifiant de compte]] * **(en)** [[http://crybit.com/15-switches-of-usermod-command-with-example-unixlinux/]] * **(en)** [[http://www.basicconfig.com/linux/edit_modify_linux_user_account_information_usermod_command]] ---- //Contributeurs principaux : [[:utilisateurs:zococo|Zococo]] ; [[:utilisateurs:eagle08]] //