pardon le mail est parti trop vite
j'ai crée l'utilisateur TEST avec adduser dans la configuration
initiale. Et ce dernier fonctionne parfaitement avec mon disque d'origine.
j'avais bien vu cette présente de /home/test dans /etc/passwd
ce qui me surprend c'est que le changement dans le fstab de ma partition
home entraine ce problème.
Merci
François-Marie BILLARD
Le 31/08/2019 à 11:58, Étienne Mollier a écrit :
François-Marie Billard, au 2019-08-31 :
Je cherche à savoir ou configure la valeur de la variable
d'environnement HOME, suite à un problème du à un ajout du
second disque pour y mettre le /home dont je décris la procédure
ci-dessous :
* J'ai créer un utilisateur de test , puis copié les données de
son répertoire /home/test sur le nouveau disque. Avec les
mêmes droits.
* J'ai modifié dans le fichier fstab la ligne du /home avec
l'UUID du nouveau disque
Au reboot et je découvre que lors du logging en mode texte avec
mon utilisateur de test la variable HOME n'est pas configurée.
Un logging via l'interface graphique boucle instantanément sur
la fenêtre de logging.
Bonjour,
Quelle procédure avez vous utilisé pour créer "test" ?
Normalement, si la variable HOME ne fait pas partie de
l'environnement, alors le shell va chercher sa définition dans
le fichier /etc/passwd, voir passwd(5) pour plus de détails sur
le format du fichier. Par exemple, pour mon utilisateur, j'ai :
$ grep emollier /etc/passwd
emollier:x:1000:1000:Etienne Mollier,,,:/home/emollier:/bin/bash
^~~~USER ^UID ^~~~~~~~~~HOME ^~~~SHELL
Cette entrée permet de remplir, outre HOME, quelques variables
supplémentaires, indiquées ci-dessus.
Si vous voulez vraiment creuser dans les détails, en tout cas
pour le shell Bash, le code source décrit exactement la
procédure suivie:
- la fonction get_current_user_info() définie dans shell.c
s'occupe de récupérer les informations stockées dans une
structure après lecture du fichier /etc/passwd ;
- la fonction set_home_var() de variables.c va s'occuper de
remplir la variable d'environnement HOME, si elle n'est pas
déjà
Bien sûr, si vous utilisez un autre shell que Bash, alors la
procédure exactement suivie peut être un chouïa différente, mais
c'est l'idée. :)
Amicalement,