Probleme variable d'environnement

steeve93800 -  
dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   -
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
Configuration: Linux Debian
Mozilla 1.8.1.12

6 réponses

  1. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
     
    quels sont les droits du fichier ? ls -l /etc/profile ?
    0
    1. steeve93800
       
      bonjour merci pour ta reponse voici les droits du fichier:

      -rw-r--r-- 1 root root 496 2008-03-13 16:55 /etc/profile
      0
  2. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
     
    et en exécutant . /etc/profile sans le sudo ?
    et en faisant chmod a+x /etc/profile ?
    0
    1. steeve93800
       
      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 ??
      0
  3. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    T'as essayé de mettre ta variable dans ton ".profile" ou ".bash_profile" ?
    0
    1. steeve93800
       
      en la mettant dans .baschrc c'est le meme probleme au redemarage du systeme
      0
      1. steeve93800 > steeve93800
         
        non excusez moi sa marche avec .bashrc mais pas si je la met dans /etc/profile
        0
  4. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Je parlais de ".bash_profile" (ou .profile en fonction des systèmes ou distribs)...
    0
    1. steeve93800
       
      en essayant avec .bash_profile c'est la meme chose que avec /etc/profile
      0
      1. steeve93800 > steeve93800
         
        est 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
        0
      2. steeve93800 > steeve93800
         
        meme 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
        0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
     
    et en invoquant bash --login ?
    0
    1. steeve93800
       
      comment est ce que j'invoque bash --login et a quoi sert cette commande?
      0
  7. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 660
     
    /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
    0