Probleme variable d'environnement
Bonjour,
Bonjour à tous,
j'aimerais si vous plait que quelqun m'aide a comprendre et regler ce probleme merci
Ma question est que J'aimerias savoir pourquoi quand je modifie ce fichier (/etc/profile) en creeant des variables d'environnement et en les exportant, ces memes variables n'existent plus si je reboot
exemple si je rajoute a la fin de /etc/profile (avec vim en executant sudo vi /etc/profile)
OK=12
export OK
au demarage lorsque j'ouvre mon shell et que je tape un echo $OK rien ne s'affiche par contre si je l'execute en tapant
sudo . /etc/prpofile
ensuite
echo $OK
la variable s'affiche bien.
donc j'en conclu que ce fichier n'est pas lu au demarage donc comment faire pour qu'il soit lu au demarage?
ensuite j'ai fait la manipulation avec le fichier .bashrc et la pas de probleme tout est pris en compte.
Linux Debian
Mozilla 1.8.1.12
Bonjour à tous,
j'aimerais si vous plait que quelqun m'aide a comprendre et regler ce probleme merci
Ma question est que J'aimerias savoir pourquoi quand je modifie ce fichier (/etc/profile) en creeant des variables d'environnement et en les exportant, ces memes variables n'existent plus si je reboot
exemple si je rajoute a la fin de /etc/profile (avec vim en executant sudo vi /etc/profile)
OK=12
export OK
au demarage lorsque j'ouvre mon shell et que je tape un echo $OK rien ne s'affiche par contre si je l'execute en tapant
sudo . /etc/prpofile
ensuite
echo $OK
la variable s'affiche bien.
donc j'en conclu que ce fichier n'est pas lu au demarage donc comment faire pour qu'il soit lu au demarage?
ensuite j'ai fait la manipulation avec le fichier .bashrc et la pas de probleme tout est pris en compte.
Linux Debian
Mozilla 1.8.1.12
Configuration: Linux Debian Mozilla 1.8.1.12
6 réponses
-
Contributeur/etc/profile n'est exécuté qu'au login. en tapant
bash --login
/etc/profile doit s'exécuter. Essayer de mettre, au début de /etdc/profile une trace pour voir:
echo "exécution de $0"
ou un
set -x
pour affchier ligne par ligne -
Contributeuret en invoquant bash --login ?
-
ModérateurJe parlais de ".bash_profile" (ou .profile en fonction des systèmes ou distribs)...
-
-
@steeve93800est ce un probleme lie au demarage??
voila mon /etc/profile:
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
if [ "`id -u`" -eq 0 ]; then
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
else
PATH="/usr/local/bin:/usr/bin:/bin:/usr/games"
fi
if [ "$PS1" ]; then
if [ "$BASH" ]; then
PS1='\u@\h:\w\$ '
else
if [ "`id -u`" -eq 0 ]; then
PS1='# '
else
PS1='$ '
fi
fi
fi
export PATH
umask 022
DES=12
export DES
ensuite voila mon bash_profile:
# ~/.bash_profile: executed by bash(1) for login shells.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.
# the default umask is set in /etc/login.defs
#umask 022
# include .bashrc if it exists
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# set PATH so it includes user's private bin if it exists
if [ -d ~/bin ] ; then
PATH=~/bin:"${PATH}"
fi
ML=12
export ML
donc si je veux faire echo $DES (pour /etc/profile)
ou echo $ML (.bash_profile)
au redemmarage cela n'affiche rien
merci d'avance pour vos reponse -
@steeve93800meme le fait de les rendre executable ne marchent pas
j'aimerais savoir si c'est lie au demarrage et si il ya un moyen de regler ça merci d'avance
-
-
ModérateurSalut,
T'as essayé de mettre ta variable dans ton ".profile" ou ".bash_profile" ?
-
-
@steeve93800non excusez moi sa marche avec .bashrc mais pas si je la met dans /etc/profile
-
-
Contributeuret en exécutant . /etc/profile sans le sudo ?
et en faisant chmod a+x /etc/profile ?-
merci pour ta reponse dubcek
j'ai change les droits comme tu me l'as di et la quad je tape . /etc/profile
et que ensuite je tape echo $OK il m'affiche bien la variable mais
quand j'eteins mon ordi et que je redemarre la en faisant echo $OK la varaible ne s'affiche plus
donc retour a case depart et pourtant quand je fais vi /etc/profile
OK=12
export OK
est bien present !
peut etre est ce parce que je l'ai mis juste apres la ligne umask 022 ??
-
-
Contributeurquels sont les droits du fichier ? ls -l /etc/profile ?