Useradd et .profile

Fermé
royinfo - 26 janv. 2009 à 17:15
 royinfo - 26 janv. 2009 à 20:52
Bonjour,

J'ai cree un nouvel usager avec useradd. (Ex : candy)

dans le repertoire /usr/candy il y a un .profile qui devrait etre execute afin de faire apparaitre un menu d'application mais il ne s'execute pas.. l'usager arrive au prompt.. que dois-je faire pour que lors du logon le .profile s'execute automatiquement.

merci
A voir également:

3 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
26 janv. 2009 à 17:26
Salut,

Le mettre dans /home/candy/ plutôt non ?
0
Voici le fichier /etc/default/accounts

root->more /etc/default/accounts
ACCOUNT_DEFAULTS:
LOGIN_GROUP=group
OTHER_GROUPS=group
SHELL=sh
HOME_DIR=/usr
HOME_MODE=755
USER_TYPE=individual
MIN_ADMIN_UID=200
MAX_ADMIN_UID=60000
MIN_SUGGEST_UID=200
MAX_SUGGEST_UID=60000
USER_DISTRIBUTED=0
ASU_USER=0
NICE=20
MIN_ADMIN_GID=100
MAX_ADMIN_GID=60000
MIN_SUGGEST_GID=100
MAX_SUGGEST_GID=60000
MIN_USER_NAME=3
MAX_USER_NAME=8
MIN_GROUP_NAME=3
MAX_GROUP_NAME=8
GROUP_DISTRIBUTED=0

Voici le repertoire de mon nouvel usager :

/usr/candy
root->ll
total 20
-rw-r--r-- 1 root sys 107 Jan 26 10:54 .cshrc
-r-------- 1 root sys 0 Jan 26 10:54 .lastlogin
-rw-r--r-- 1 root sys 82 Jan 26 10:54 .login
-rw-r--r-- 1 root sys 1 Jan 26 10:54 .logout
-rw------- 1 root sys 754 Jan 26 10:56 .profile
-rwxrwxrwx 1 root sys 1376 Jan 26 10:53 mcba.menu

Pour le creer j'ai utilise la commande :

useradd -u 317 candy

Dois-je preciser a quelque part qu'il faut executer le .profile

Lorsque je connect avec le user candy, je me retrouve au prompt : /usr/candy mais je m'attends que le .profile soit execute pour qu'un menu lui apparaisse..
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
26 janv. 2009 à 18:27
C'est quoi le shell de connexion de tes $USER ? sh ou csh ? Les deux n'ayant pas le même fichier de démarrage associé.
.profile pour sh
.login pour csh
0
Dans le fichier /etc/default/account je retrouve les infos suivantes :

SHELL=sh
HOME_DIR=/usr

Donc lorsque tu ajoutes un usager via la commande useradd par defaut il utilise ces infos.

Note : la creation des fichiers (.profile etc ) du user (usr/candy) ont ete copie a l'aide de la commande 'cp'.

les fichiers proviennent d'un autre user ( usr/alain) est-ce que j'ai oublie de faire quelques choses apres les copies..
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897 > royinfo
26 janv. 2009 à 19:34
Donc lorsque tu ajoutes un usager via la commande useradd par defaut il utilise ces infos.
Oui je me doute mais comme dans le listing du /home de ton ÛSER on retrouve :
rw-r--r-- 1 root sys 107 Jan 26 10:54 .cshrc
-r-------- 1 root sys 0 Jan 26 10:54 .lastlogin
-rw-r--r-- 1 root sys 82 Jan 26 10:54 .login
-rw-r--r-- 1 root sys 1 Jan 26 10:54 .logout
-rw------- 1 root sys 754 Jan 26 10:56 .profile
-rwxrwxrwx 1 root sys 1376 Jan 26 10:53 mcba.menu 
je me demandais donc ce qu'il fallait en conclure ;-\

Au fait il contient quoi ton fichier .profile ?

On peut avoir la sortie de :
grep 'candy' /etc/passwd
Au fait sur quel système tu es ? et/ou quelle distrib ?
0
royinfo > jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020
26 janv. 2009 à 20:09
Le fichier /etc/passwd contient :

candy:x:317:50::/usr/candy:/bin/sh

le fichier .profile de /usr/candy/ contient :

root->more .profile
stty -parity erase kill
PATH=:/bin:/usr/bin
MAIL=/usr/spool/mail/candy
MAILCHECK=600
HOME=/usr/candy
export PATH HOME MAIL
umask 0000
trap '' 2 3
tput clear
KEYB=ascii
COMPANY=Pca
trap '' 2 3 15
# @(#) mcba - shell script to invoke the MCBA Master Menu Release 4.0
:
clear
echo "... PLEASE WAIT\c"
PATH=/FILES:$PATH
TERMCAP=/etc/a_termcap;export TERMCAP
A_TERMCAP=/etc/a_termcap;export A_TERMCAP
A_CONFIG=/FILES/NCR/object/cblconfig
export PATH A_CONFIG
stty intr "^-" ignbrk
OLDTERM=$TERM

if [ $TERM = "wy60" -o $TERM = "wyse60" ]
then stty erase "^B"
fi

/usr/$LOGNAME/mcba.menu

if [ $TERM = "wy60" -o $TERM = "wyse60" ]
then stty erase "^H"
cat /u/PCA/bin/BSOFF
fi

TERM=$OLDTERM
export TERM

stty intr "^?" -ignbrk
tput clear
kill -9 0
root->
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
26 janv. 2009 à 20:20
J'ai oublié :
readlink -f /bin/sh
,-))
0
$ readlink -f /bin/sh
readlink: not found

J'ai fait un logon avec candy. Au prompt j'ai fait un env et voici les variables d'environnements :

/usr/candy
$ env
ANZIO=ANZIOLITE
COLUMNS=80
HOME=/usr/candy
HUSHLOGIN=FALSE
HZ=100
LINES=25
LOGNAME=candy
MAIL=/usr/spool/mail/candy
PATH=/bin:/usr/bin
SHELL=/bin/sh
TERM=ansi
TZ=EST5EDT
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897 > royinfo
26 janv. 2009 à 20:37
Alors si "readlink" n'est pas présent :
ls -l /bin/sh
0
royinfo > jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020
26 janv. 2009 à 20:52
root->ls -l /bin/sh
lrwxrwxrwx 1 root sys 30 Feb 2 2007 /bin/sh -> /opt/K/SCO/Unix
/5.0.4Eb/bin/sh
0