Présentation
Le usermod
La commande est l'une des nombreuses commandes Linux dont disposent les administrateurs système pour la gestion des utilisateurs. Il est utilisé pour modifier les détails du compte utilisateur existant, tels que le nom d'utilisateur, le mot de passe, l'emplacement du répertoire personnel, le shell par défaut, etc.
Dans ce didacticiel, vous apprendrez à utiliser le usermod
commande sous Linux pour modifier les informations de connexion de l'utilisateur.
Prérequis
- Un système exécutant Linux
- Accès à la ligne de commande
Syntaxe Linux usermod
La syntaxe de base pour le usermod
la commande est :
usermod [options] [username]
Le usermod
La commande modifie les fichiers de configuration contenant les informations de compte d'utilisateur. Ces fichiers sont :
/etc/passwd
– informations concernant les comptes des utilisateurs/etc/shadow
– informations relatives à la sécurité de l'utilisateur/etc/group
– informations sur les groupes/etc/gshadow
– informations relatives à la sécurité du groupe/etc/login.defs
– configuration de la suite de mots de passe shadow
Il est possible d'éditer directement les fichiers mentionnés ci-dessus, à l'aide d'un éditeur de texte tel que nano ou vim. Cependant, usermod
rend le processus plus rapide et plus simple.
Exemples de commande usermod
Vous trouverez ci-dessous une liste de usermod
options, ainsi que la syntaxe et les exemples spécifiques aux options.
Ajouter des informations à un utilisateur
Utilisez usermod
avec le -c
option pour ajouter une information sur un utilisateur au /etc/passwd
dossier. Cela permet d'identifier l'utilisateur et offre un espace pour les commentaires temporaires liés à l'utilisateur.
sudo usermod -c "[information]" [username]
Utilisez le getent
commande pour vérifier l'entrée liée à l'utilisateur dans le /etc/passwd
fichier.
L'entrée contient maintenant le commentaire ajouté avec usermod
.
Définir le répertoire personnel de l'utilisateur
Lorsque vous créez un utilisateur sous Linux, le système crée automatiquement un dossier personnel pour lui dans /home/[username]
. Pour modifier l'emplacement du dossier de départ de l'utilisateur, utilisez le -d
choix :
sudo usermod -d [directory-location] [username]
L'exemple ci-dessus a changé le dossier personnel de l'utilisateur de /home/mike
à /var/mike
. Le getent
La commande confirme la réussite de la modification.
Le -d
ne déplace pas le contenu du dossier de départ vers le nouvel emplacement. Si l'utilisateur a déjà utilisé le dossier de départ pour stocker ses fichiers, ajoutez le -m
possibilité de déplacer le contenu du répertoire personnel de l'utilisateur :
sudo usermod -d [location] -m [username]
Dans le cas de l'utilisateur de l'exemple ci-dessus, la commande ressemble à ceci :
sudo usermod -d /var/mike -m mike
Définir la date d'expiration du compte de l'utilisateur
Les comptes d'utilisateurs n'expirent pas sous Linux par défaut. Utilisez le chage -l
commande pour vérifier les informations d'ancienneté du compte d'un utilisateur :
sudo chage -l [username]
Comme le montre l'exemple ci-dessus, le compte est configuré pour ne pas expirer. Changez cela en utilisant usermod
avec le -e
option. Il vous permet de spécifier l'année, le mois et le jour d'expiration du compte :
sudo usermod -e [YYYY-MM-DD] [username]
Confirmez le changement réussi en vérifiant le compte avec le chage -l
commande à nouveau :
Définir le shell de l'utilisateur
Utilisez usermod -s
pour changer le shell par défaut pour un seul utilisateur :
sudo usermod -s [shell] [username]
Si le changement a réussi, getent
affiche le nouveau shell par défaut à la fin de l'entrée.
Modifier l'UID de l'utilisateur
Un UID (identifiant utilisateur) est le numéro unique attribué à l'utilisateur lors de la création du compte avec le useradd
commande. Le /etc/login.defs
Le fichier définit la plage de valeurs UID. Modifier l'UID d'un utilisateur avec le usermod -u
commande :
sudo usermod -u [new-UID] [username]
Dans le passwd
entrée, recherchez l'UID juste après le nom d'utilisateur et le mot de passe :
Modifier le nom de connexion de l'utilisateur
Changez un nom d'utilisateur en ajoutant le -l
option. La syntaxe est la suivante :
sudo usermod -l [newname] [oldname]
Comme le montre l'exemple ci-dessus, en utilisant l'ancien nom d'utilisateur pour vérifier le /etc/passwd
le fichier ne renvoie plus de données. Cependant, les mêmes données sont désormais disponibles sous le nouveau nom.
Verrouiller et déverrouiller un utilisateur
Verrouillez un compte utilisateur en utilisant le -L
option.
sudo usermod -L [username]
Une fois le compte verrouillé avec -L
, les tentatives de connexion de l'utilisateur échouent lors de la saisie du mot de passe :
Pour déverrouiller le compte que vous avez précédemment verrouillé, tapez usermod -U
suivi du nom du compte :
sudo usermod -U [username]
Comme vous le voyez dans l'exemple ci-dessus, le mot de passe fonctionne à nouveau et le shell zsh démarre.
Définir le mot de passe d'un utilisateur
La manière la plus courante de définir un mot de passe pour un utilisateur consiste à utiliser la commande passwd. usermod
possède également le -p
dédié possibilité de créer un mot de passe :
sudo usermod -p [password] [username]
Cependant, cette méthode de création d'un mot de passe n'est pas recommandée car le mot de passe est visible dans le /etc/shadow
dossier. Si vous utilisez la commande grep pour rechercher un nom d'utilisateur dans le /etc/shadow
fichier, l'entrée contient la version en texte brut du mot de passe créé avec usermod
:
Modifier le groupe principal de l'utilisateur
Modifier le groupe principal d'un utilisateur avec usermod -g
:
sudo usermod -g [group] [username]
L'id
La commande confirme le changement réussi du groupe principal :
Ajouter un utilisateur à un groupe supplémentaire
Outre leur groupe principal, les utilisateurs peuvent être membres de n'importe quel nombre de groupes supplémentaires. Le -G
option ajoute l'utilisateur à un groupe supplémentaire :
sudo usermod -G [group] [username]
Cependant, si l'utilisateur appartient déjà à certains groupes supplémentaires, usermod -G
les supprime de ces groupes et les ajoute uniquement à ceux spécifiés après la commande.
Dans l'exemple ci-dessous, l'utilisateur est déjà membre d'un groupe supplémentaire. La combinaison de -a
et -G
options ajoute l'utilisateur au groupe spécifié et le laisse dans le groupe supplémentaire dont il était déjà membre.
sudo usermod -a -G [group] [username]
Modifier le compte de l'utilisateur à l'aide de plusieurs options
Utilisez plusieurs options dans une seule commande pour modifier plus facilement un utilisateur. L'exemple ci-dessous montre un usermod
commande que :
- modifie le dossier d'accueil et le shell,
- fixe une date d'expiration de compte,
- ajoute un commentaire,
- modifie l'UID, et
- ajoute l'utilisateur à un groupe supplémentaire.
sudo usermod -d [home-folder] -s [shell] -e [YYYY-MM-DD] -c "[comment]" -u [UID] -aG [group] [username]
Afficher toutes les commandes et arguments usermod
Pour lire usermod
aide, utilisez le --help
argument :
usermod --help
Pour une liste plus détaillée des options et fonctions, utilisez la commande man :
man usermod