Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

changer le login d'un utilisateur

10 réponses
Avatar
Christophe Alonso
Bonjour,

pour une raison trop longue à expliquer ici, je me vois obligé de
modifier le login de mon utilisateur.

Après recherche sur internet, il semble que usermod sache faire ça. Sauf
que le man me donne quelques sueurs froides.

La commande qui m'intéresse est --login. Si je comprends bien, il faut
faire usermod -lNEW_LOGIN LOGIN pour changer le login d'un utilisateur
donné. Après quoi il faut encore changer le nom du répertoire de
l'utilisateur manuellement. Bon.

Mais à la fin du man, un avertissement ajoute qu'il faut manuellement
modifier le propriétaire des fichiers crontab et des tâches at...
Là, par contre pour moi c'est du charabia.

Si quelqu'un pouvait m'éclairer sur la procédure, je lui en serait très
reconnaissant. N'hésitez pas à en faire des tonnes je suis trèèèès lent.

Merci,
Christophe

PS: est-ce que la commande -m me permettrait de "déplacer" les fichiers
de LOGIN vers NEW_LOGIN ????

Encore merci

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers debian-user-french-REQUEST@lists.debian.org
En cas de soucis, contactez EN ANGLAIS listmaster@lists.debian.org

10 réponses

Avatar
Jean-Michel OLTRA
Bonjour,


Le lundi 20 avril 2009, Christophe Alonso a écrit...


Mais à la fin du man, un avertissement ajoute qu'il faut manuellement
modifier le propriétaire des fichiers crontab et des tâches at...
Là, par contre pour moi c'est du charabia.



Il y a, dans /var/spool/cron/crontabs, les crontab d'utilisateurs. Et
elles sont nommées comme l'utilisateur. Pareil pour /var/spool/mail/.
Donc si l'utilisateur est modifié, il faut renommer les fichiers.

Tu pourrais utiliser find pour repérer tous les fichiers qui sont
possédés par l'utilisateur (proprio ou groupe) ou qui ont le nom de
l'utilisateur, mais avant de faire la modification, pour avoir un état
des lieux. Voir les options -user, -group et -name de find

--
jm

A.E.L. Sarl (R.C.S CASTRES 490843240)
http://www.spidboutic.fr


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Avatar
Kevin Hinault
Le 20 avril 2009 12:15, Jean-Michel OLTRA
a écrit :

   Bonjour,

Le lundi 20 avril 2009, Christophe Alonso a écrit...

> Mais à la fin du man, un avertissement ajoute qu'il faut manuellement
> modifier le propriétaire des fichiers crontab et des tâches at...
> Là, par contre pour moi c'est du charabia.

Il y a, dans /var/spool/cron/crontabs, les crontab d'utilisateurs. Et
elles sont nommées comme l'utilisateur. Pareil pour /var/spool/mail/.
Donc si l'utilisateur est modifié, il faut renommer les fichiers.

Tu pourrais utiliser find pour repérer tous les fichiers qui sont
possédés par l'utilisateur (proprio ou groupe)



Hum si l'uid et le gid de l'utilisateur ne changent pas, il n'y aura
pas besoin de faire cette recherche puisque les droits owner et group
sont numériques pas nominatif.

Pour at, les fichiers de taches at ( /var/spool/crontab/ ) ne sont pas
nominatifs non plus.


ou qui ont le nom de l'utilisateur, mais avant de faire la modification, pour avoir un état
des lieux.



ça oui pour trouver les répertoires ou fichier nommé comme
l'utilisateur, je précise pour christophe :

# find / -user <user> -name <user> 2> /dev/null
# find / -group <user> -name <user> 2> /dev/null

De toutes façon, j'ai envie de dire que les warnings du man ne sont
pas important puisqu'à priori Christophe ne connaissant pas les
crontabs, il y a peu de chances que des taches cron soient présentes
et donc un nouveau fichier sera créé s'il utilise un jour la commande
crontab pour cet utilisateur bien précis. D'ailleurs pour savoir si
des taches cron existent il suffit d'utiliser cette commande :

# crontab -l -u <user>

:)

--
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org

Rejoignez maintenant plus de 4754 personnes, associations, entreprises et
collectivités qui soutiennent notre action

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Avatar
Alain Baeckeroot
Le 20/04/2009 à 10:57, Christophe Alonso a écrit :

Bonjour,

pour une raison trop longue à expliquer ici, je me vois obligé de
modifier le login de mon utilisateur.

Après recherche sur internet, il semble que usermod sache faire à §a. Sauf
que le man me donne quelques sueurs froides.

La commande qui m'intéresse est --login. Si je comprends bien, il fa ut
faire usermod -lNEW_LOGIN LOGIN pour changer le login d'un utilisateur
donné. Après quoi il faut encore changer le nom du réperto ire de
l'utilisateur manuellement. Bon.

Mais à la fin du man, un avertissement ajoute qu'il faut manuellement
modifier le propriétaire des fichiers crontab et des tâches at. ..
Là, par contre pour moi c'est du charabia.

Si quelqu'un pouvait m'éclairer sur la procédure, je lui en ser ait très
reconnaissant. N'hésitez pas à en faire des tonnes je suis tr èèèès lent.

Merci,
Christophe

PS: est-ce que la commande -m me permettrait de "déplacer" les fichi ers
de LOGIN vers NEW_LOGIN ????

Encore merci




L'utilisateur est identifié par son uid (user identity) dans /etc/pass wd
et son gid (group id) dans /etc/group.

Dans ces fichiers remplacer ancien_nom par nouveau_nom
va modifier l'affichage en conséquence. (attention
au home dans /etc/passwd, dernier champ de la ligne)

Il reste à trouver les répertoires qui sont identifiés avec
le nom pour etre plus lisible:
$ sudo find / -mount -type d -name ancien_nom

(-mount reste sur le systeme de fichier donné, donc répéter
l'opération si il y a plusieurs systèmes de fichiers à
explorer)
Il ne devrait pas y en avoir beaucoup, ca doit etre assez rapide.

je pense n'avoir rien oublié :-), mais ensuite
vérifier avec find / -u ... > tout_machin.log
(ca peut etre très long) et jeter un oeil avec
un bon éditeur de texte.

Alain

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Avatar
Christophe Alonso
Le lundi 20 avril 2009 à 12:41 +0200, Alain Baeckeroot a écrit :
Le 20/04/2009 à 10:57, Christophe Alonso a écrit :
>
> Bonjour,
>
> pour une raison trop longue à expliquer ici, je me vois obligé de
> modifier le login de mon utilisateur.
>
> Après recherche sur internet, il semble que usermod sache faire ça. Sauf
> que le man me donne quelques sueurs froides.
>
> La commande qui m'intéresse est --login. Si je comprends bien, il faut
> faire usermod -lNEW_LOGIN LOGIN pour changer le login d'un utilisateur
> donné. Après quoi il faut encore changer le nom du répertoire de
> l'utilisateur manuellement. Bon.
>
> Mais à la fin du man, un avertissement ajoute qu'il faut manuellement
> modifier le propriétaire des fichiers crontab et des tâches at...
> Là, par contre pour moi c'est du charabia.
>
> Si quelqu'un pouvait m'éclairer sur la procédure, je lui en serait très
> reconnaissant. N'hésitez pas à en faire des tonnes je suis trèèèès lent.
>
> Merci,
> Christophe
>
> PS: est-ce que la commande -m me permettrait de "déplacer" les fichiers
> de LOGIN vers NEW_LOGIN ????
>
> Encore merci
>

L'utilisateur est identifié par son uid (user identity) dans /etc/passwd
et son gid (group id) dans /etc/group.

Dans ces fichiers remplacer ancien_nom par nouveau_nom
va modifier l'affichage en conséquence. (attention
au home dans /etc/passwd, dernier champ de la ligne)

Il reste à trouver les répertoires qui sont identifiés avec
le nom pour etre plus lisible:
$ sudo find / -mount -type d -name ancien_nom

(-mount reste sur le systeme de fichier donné, donc répéter
l'opération si il y a plusieurs systèmes de fichiers à
explorer)
Il ne devrait pas y en avoir beaucoup, ca doit etre assez rapide.

je pense n'avoir rien oublié :-), mais ensuite
vérifier avec find / -u ... > tout_machin.log
(ca peut etre très long) et jeter un oeil avec
un bon éditeur de texte.

Alain



Merci à tous pour vos réponses.
J'ai donc fait un usermod -l pour l'utilisateur.
Et ça marche. Mais si, comme le suggère le man, je modifie le nom du
home utilisateur, alors là par contre ça ne va plus du tout :
"utilisateur n'a pas de répertoire, se place dans /home" ou quelque
chose comme ça. Comment faire (modifier le nom du répertoire utilisateur
et faire en sorte qu'il soit reconnu comme tel) ?
J'ai essayé de modifier les propriétés du répertoire utilisateur, mais
j'ai toujours un message d'erreur au login, comme quoi il ne trouve pas
de répertoire pour l'utilisateur et qu'il se place par défaut
dans /home.

Christophe

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Avatar
Kevin Hinault
Le 20 avril 2009 16:58, Christophe Alonso a éc rit :

Merci à tous pour vos réponses.
J'ai donc fait un usermod -l pour l'utilisateur.
Et ça marche. Mais si, comme le suggère le man, je modifie le nom du
home utilisateur, alors là par contre ça ne va plus du tout :
"utilisateur n'a pas de répertoire, se place dans /home" ou quelque
chose comme ça. Comment faire (modifier le nom du répertoire utilisat eur
et faire en sorte qu'il soit reconnu comme tel) ?
J'ai essayé de modifier les propriétés du répertoire utilisateur, mais
j'ai toujours un message d'erreur au login, comme quoi il ne trouve pas
de répertoire pour l'utilisateur et qu'il se place par défaut
dans /home.

Christophe




Edites ton fichier /etc/passwd (avec vipw par exemple) et cherche la
ligne correspondant à ton utilisateur et tu verras dessus le chemin de
la home de l'utilisateur. Vérifie qu'il correspond bien au répertoire.

Kévin

--
Membre de l'April - « promouvoir et défendre le logiciel libre » -
http://www.april.org

Rejoignez maintenant plus de 4754 personnes, associations, entreprises et
collectivités qui soutiennent notre action

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Avatar
Pierre Meurisse
Bonjour,

On Mon, Apr 20, 2009 at 10:57:05AM +0200, Christophe Alonso wrote:

Bonjour,

pour une raison trop longue à expliquer ici, je me vois obligé de
modifier le login de mon utilisateur.

Après recherche sur internet, il semble que usermod sache faire ça. Sauf
que le man me donne quelques sueurs froides.

La commande qui m'intéresse est --login. Si je comprends bien, il faut
faire usermod -lNEW_LOGIN LOGIN pour changer le login d'un utilisateur
donné. Après quoi il faut encore changer le nom du répertoire de
l'utilisateur manuellement. Bon.

Mais à la fin du man, un avertissement ajoute qu'il faut manuellement
modifier le propriétaire des fichiers crontab et des tâches at...
Là, par contre pour moi c'est du charabia.

Si quelqu'un pouvait m'éclairer sur la procédure, je lui en serait très
reconnaissant. N'hésitez pas à en faire des tonnes je suis trèèèès lent.

Merci,
Christophe

PS: est-ce que la commande -m me permettrait de "déplacer" les fichiers
de LOGIN vers NEW_LOGIN ????

Encore merci



à mon avis, pour changer de toto en titi:
# deluser toto
# mv /home/toto /home/titi
# adduser --uid _le bon uid_ titi

Je pense que ça suffit.

A+

--
Pierre Meurisse

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Avatar
Christophe Alonso
Le lundi 20 avril 2009 à 17:13 +0200, Kevin Hinault a écrit :
Le 20 avril 2009 16:58, Christophe Alonso a écrit :

> Merci à tous pour vos réponses.
> J'ai donc fait un usermod -l pour l'utilisateur.
> Et ça marche. Mais si, comme le suggère le man, je modifie le nom du
> home utilisateur, alors là par contre ça ne va plus du tout :
> "utilisateur n'a pas de répertoire, se place dans /home" ou quelque
> chose comme ça. Comment faire (modifier le nom du répertoire utilisateur
> et faire en sorte qu'il soit reconnu comme tel) ?
> J'ai essayé de modifier les propriétés du répertoire utilisateur, mais
> j'ai toujours un message d'erreur au login, comme quoi il ne trouve pas
> de répertoire pour l'utilisateur et qu'il se place par défaut
> dans /home.
>
> Christophe
>

Edites ton fichier /etc/passwd (avec vipw par exemple) et cherche la
ligne correspondant à ton utilisateur et tu verras dessus le chemin de
la home de l'utilisateur. Vérifie qu'il correspond bien au répertoire.

Kévin



Je transmets la réponse de Florent Charton, envoyée en privé :
"Bonjour Christophe,

Je pense que ce qui s'est passé, c'est que le dossier home de ton
utilisateur est resté le même (/home/<ancien user>).
Il faut donc changer aussi le home en l'adaptant au nouveau login si je
ne m'abuse. Pour celà, il suffit de faire :
# usermod -d /home/<newlogin> <new login>

Si tu veux vérifier que le home de ton utilisateur est celui que tu
veux :
$ getent passwd <login>

Florent"

C'est ce qu'il me manquait, j'avais lu trop rapidement le man usermod.

Merci encore à tous et bonne fin d'après-midi

Christophe

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Avatar
Jacques L'helgoualc'h
Pierre Meurisse a écrit, lundi 20 avril 2009, à 17:11 :
Bonjour,



bonjour,

[...]
à mon avis, pour changer de toto en titi:
# deluser toto
# mv /home/toto /home/titi
# adduser --uid _le bon uid_ titi

Je pense que ça suffit.



Un petit

grep -Rw toto /etc

pourra vérifier quelques oublis possibles (/etc/sudoers, /etc/aliases,
...).
--
Jacques L'helgoualc'h

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Avatar
Florent Charton
Le 20/04/2009 17:26, Christophe Alonso a écrit :
Le lundi 20 avril 2009 à 17:13 +0200, Kevin Hinault a écrit :

Le 20 avril 2009 16:58, Christophe Alonso a écrit :


Merci à tous pour vos réponses.
J'ai donc fait un usermod -l pour l'utilisateur.
Et ça marche. Mais si, comme le suggère le man, je modifie le nom du
home utilisateur, alors là par contre ça ne va plus du tout :
"utilisateur n'a pas de répertoire, se place dans /home" ou quelque
chose comme ça. Comment faire (modifier le nom du répertoire utilisateur
et faire en sorte qu'il soit reconnu comme tel) ?
J'ai essayé de modifier les propriétés du répertoire utilisateur, mais
j'ai toujours un message d'erreur au login, comme quoi il ne trouve pas
de répertoire pour l'utilisateur et qu'il se place par défaut
dans /home.

Christophe




Edites ton fichier /etc/passwd (avec vipw par exemple) et cherche la
ligne correspondant à ton utilisateur et tu verras dessus le chemin de
la home de l'utilisateur. Vérifie qu'il correspond bien au répertoire.

Kévin




Je transmets la réponse de Florent Charton, envoyée en privé :
"Bonjour Christophe,

Je pense que ce qui s'est passé, c'est que le dossier home de ton
utilisateur est resté le même (/home/<ancien user>).
Il faut donc changer aussi le home en l'adaptant au nouveau login si je
ne m'abuse. Pour celà, il suffit de faire :
# usermod -d /home/<newlogin> <new login>

Si tu veux vérifier que le home de ton utilisateur est celui que tu
veux :
$ getent passwd<login>

Florent"

C'est ce qu'il me manquait, j'avais lu trop rapidement le man usermod.

Merci encore à tous et bonne fin d'après-midi

Christophe




Je m'excuse pour cette négligence qui a été d'envoyer le message en
privé. Je ne m'en étais pas rendu compte.

Heureux d'avoir été utile pour cette fois :)

Florent

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS
Avatar
Julien
Bonjour a tous,

Juste un petit ajout, vérifie que certain fichier de config dans le home
ne comporte de chemin absolue vers le home de l'utilisateur. Par
exemple :

/home/toto/.amsn

pourrait contenir
avatar_image=/home/toto/images/toto.jpg

si tu change toto en titi le chemin /home/toto/images/toto.jpg ne
fonctionnera plus.

Il me semble que j'ai eu le problème avec certain programme.

Julien.


Le lundi 20 avril 2009 à 18:44 +0200, Jacques L'helgoualc'h a écrit :
Pierre Meurisse a écrit, lundi 20 avril 2009, à 17:11 :
> Bonjour,

bonjour,

[...]
> à mon avis, pour changer de toto en titi:
> # deluser toto
> # mv /home/toto /home/titi
> # adduser --uid _le bon uid_ titi
>
> Je pense que ça suffit.

Un petit

grep -Rw toto /etc

pourra vérifier quelques oublis possibles (/etc/sudoers, /etc/aliases,
...).
--
Jacques L'helgoualc'h




--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists Vous pouvez aussi ajouter le mot
``spam'' dans vos champs "From" et "Reply-To:"

Pour vous DESABONNER, envoyez un message avec comme objet "unsubscribe"
vers
En cas de soucis, contactez EN ANGLAIS