root@ordinateur:~# mount -o remount,rw /et refaite la commande précédente.
La plupart des informations relatives à un compte d'utilisateur sous Ubuntu sont modifiables à partir de l'outil d'administration graphique Utilisateurs et groupes. Par exemple, le nom affiché d'un compte, son mot de passe, son numéro de téléphone ou l'emplacement de son dossier personnel peuvent être changés à travers cette interface graphique.
Toutefois, l'identifiant d'un compte (en anglais, login name) ne peut pas être modifié à travers un outil graphique. Le recours à l'outil en ligne de commande usermod
est requis.
Comme tous les outils d'administration en ligne de commande, usermod
est un outil puissant qui a une structure stricte. Si vous ne respectez pas cette structure, vous pouvez rendre inopérant un compte d'utilisateur.
La commande s'emploie ainsi :
sudo usermod [options] IDENTIFIANT
Quelques options doivent être passées à usermod
afin qu'elles aient un résultat intéressant. Ci-dessous se trouve un exemple de commande complète qui provoque une modification de l'identifiant d'un compte et le déplacement de son dossier personnel :
sudo usermod --login nouvel_identifiant --home nouvel_emplacement_du_dossier_personnel --move-home identifiant_actuel
Étudions cette commande et ses options :
Des options supplémentaires pour usermod
sont disponibles. Consultez le manuel utilisateur de usermod
(man usermod
) pour davantage d'informations.
Exemple: L'utilisateur a veut changer le nom de l'utilisateur dd en utilisateur xx
a@a:~$ sudo usermod --login xx --home /home/xx --move-home dd
Illustrons ces limitations par un exemple concret : dans un ordinateur, deux comptes d'utilisateurs existent : administrateur
et utilisateur
. Le compte d'utilisateur administrateur
est le seul à disposer des droits d'administration.
utilisateur
ne peut modifier l'identifiant de personne ;administrateur
peut modifier l'identifiant de utilisateur
;administrateur
ne peut pas modifier son propre identifiant. Pour procéder à la modification de son identifiant, il est nécessaire de passer par une session super-utilisateur (root) en mode de récupération.Robert et Denise ont un ordinateur dans lequel est installé un système Ubuntu. Le système leur a été livré ainsi :
administrateur
. Le compte administrateur
est le seul compte disposant des droits d'administration ;utilisateur
.
Robert et Denise aimeraient que leur compte d'utilisateur ait pour identifiant leur prénom (robert
et denise
). De plus, ils aimeraient que leur dossier personnel soit déplacés afin qu'ils reflètent un emplacement approprié (/home/robert/
et /home/denise/
). Comment procéder ?
administrateur
;administrateur@ordinateur:~$ sudo pkill -u utilisateur administrateur@ordinateur:~$ sudo usermod --login denise --home /home/denise --move-home utilisateur
Désormais, l'identifiant de compte de Denise est denise
et son dossier personnel se trouve à l'emplacement /home/denise/
.
Robert ne doit pas avoir de session active en cours. Il ne peut pas modifier lui-même son identifiant de compte d'utilisateur. De plus, Denise n'est pas administratrice du système ; elle ne peut donc pas modifier l'identifiant de compte de Robert. Pour modifier l'identifiant de compte de Robert, il est nécessaire de passer par une session super-utilisateur du mode de récupération.
Ubuntu, kernel 2.6.x (recovery mode)
;mount -o remount,rw /
afin de pouvoir écrire sur le système de fichier
root@ordinateur:~# usermod --login robert --home /home/robert --move-home administrateur
root@ordinateur:~# exit
La session super-utilisateur prend fin et le menu contextuel apparaît à nouveau ;
Désormais, l'identifiant du compte de Robert est robert
et son dossier personnel se trouve à l'emplacement /home/robert/
.
/etc/sddm.conf
comme suit, avant l'étape 5:
root@ordinateur:~#nano /etc/sddm.conf [Autologin] User=administrateur Session=plasma.desktop
et remplacer
administrateur
par robert
pour avoir
[Autologin] User=robert Session=plasma.desktop
Robert enregistrera la modification avec la commande Ctrl O (^O)
, puis quittera Nano avec Ctrl X (^X)
.
A l'issue de l'étape 6, il faudra aussi modifier les fichiers de configuration dans les dossiers /home/robert/.config
et /home/robert/.local
, en les éditant un à un pour changer, le cas échéant, administrateur
par robert
.
Au moment de la création d'un nouveau compte d'utilisateur, un nouveau groupe d'utilisateurs du même nom est automatiquement créé. Ce groupe devient le groupe principal du nouveau compte d'utilisateur. Lorsque vous modifiez l'identifiant d'un compte d'utilisateur avec usermod
, le nom du groupe associé n'est pas automatiquement modifié. Pour forcer la modification d'un nom de groupe d'utilisateurs, vous devez utiliser l'utilitaire en ligne de commande groupmod
.
Reprenons l'exemple précédent de l'ordinateur de Robert et Denise : lorsqu'ils ont reçu leur ordinateur, deux comptes ont été créés : administrateur était membre d'un groupe d'utilisateur du même nom (administrateur), et utilisateur était aussi membre d'un groupe du même nom (utilisateur). Robert et Denise ont modifié le nom de leurs comptes d'utilisateur avec usermod
(le compte administrateur est devenu robert et le compte utilisateur est devenu denise). Cependant, les noms des groupes d'utilisateurs n'ont pas changé : le groupe d'utilisateur principal de robert est administrateur et celui de denise est utilisateur.
En soi, cela n'a pas de réel impact : Ubuntu se servant d'un identifiant numérique pour identifier les utilisateurs propriétaires et les groupes propriétaires des fichiers contenus dans le système d'exploitation, les noms des comptes d'utilisateur et des groupes d'utilisateurs peuvent différer. Toutefois, pour plus de propreté et pour être en accord avec certains tutoriels, il est préférable que tous deux soient identiques.
Pour ce faire, utilisez l'utilitaire en ligne de commande groupmod
. Il doit être exécuté par un administrateur du système ; il n'est pas obligatoire que les sessions en cours soient fermées. La commande s'emploie ainsi :
administrateur@ordinateur:~$ sudo groupmod --new-name nouveau_nom nom_actuel
Étudions cette commande et ses options :
Par exemple, une fois que leurs identifiants ont été changés, Robert et Denise souhaitent que leurs groupes principaux correspondent aussi à leur nom.
administrateur
;robert@ordinateur:~$ sudo groupmod --new-name denise utilisateur robert@ordinateur:~$ sudo groupmod --new-name robert administrateur
Désormais, les noms des groupes principaux utilisateur
et administrateur
sont denise
et robert
. La modification est prise en compte immédiatement pour toutes les sessions utilisateurs, même pour celle de Robert qui est en cours actuellement.
root@ordinateur:~# mount -o remount,rw /et refaite la commande précédente.