ENVIRON(5)       Manuel de l'administrateur Linux      ENVIRON(5)


NOM
       environ - Environnement de l'utilisateur.

SYNOPSIS
       extern char **environ;

DESCRIPTION
       La  variable  environ pointe sur un tableau de chaines que
       l'on nomme `environnement'.   (Cette  variable  doit  être
       déclaré  dans  les  programmes utilisateurs, mais elle est
       présente dans unistd.h si le fichier d'en-tête provient de
       libc4  ou  libc5,  ou  encore  de  glibc  si  la  variable
       _GNU_SOURCE est définie.)

       Ce tableau de chaînes  de  caractères  qui  est  fourni  à
       exec(3)  quand  un  processus démarre.  Par convention ces
       chaines ont la forme  `nom=valeur'.   Des  exemples  clas­
       siques sont :

       HOME   Le  répertoire  de  login  d'un utilisateur, mis en
              place par login(1) depuis le fichier  des  mots  de
              passe passwd(5).

       LANG   Le  nom du lieux à utiliser pour les configurations
              locales,  s'il  n'est  pas  écrasé  par  LC_ALL  ou
              d'autres variables d'environnement.

       PATH   Une  liste de préfixes de répertoires, que sh(1) et
              de nombreux autres programmes utilisent pour  trou­
              ver  un  fichier dont le chemin est incomplet.  Les
              préfixes sont séparés par des  `:'.   (De  même  il
              existe  CDPATH  utilisé  par  certains  shells pour
              connaître le répertoire destination d'une  commande
              cd,  MANPATH  utilisé  par  man(1) pour trouver les
              pages de manuel, etc...)

       PWD    Le répertoire de travail actuel, renseigné par cer­
              tains shells.

       SHELL  Le  nom  de  fichier  du  shell  à  la connexion de
              l'utilisateur.

       TERM   Le type de terminal utilisé pour les affichages.

       USER   Le nom de l'utilisateur connecté (utilisé  par  des
              programmes de style BSD).

       LOGNAME
              Le  nom  de l'utilisateur connecté (utilisé par des
              programmes de style Système V).

       D'autres noms peuvent être inscrits  dans  l'environnement
       par  la  commande export avec la syntaxe `nom=valeur' sous
       sh(1), ou par la commande setenv avec csh(1).



Linux                       2 Mai 1999                          1





ENVIRON(5)       Manuel de l'administrateur Linux      ENVIRON(5)


       Des arguments peuvent aussi être insérés  dans  l'environ­
       nement lors d'un exec(2).

       Un programme C peut manipuler l'environnement en utilisant
       les fonctions getenv(), putenv(), setenv(), et unsetenv().

       Remarquez  que  le  comportement de nombreux programmes ou
       routines de bibliothèque est influencé par la présence, ou
       par  la  valeur de certaines variables d'environnement. En
       voici quelques exemples :

       Les variables LANG, LANGUAGE,  NLSPATH,  LOCPATH,  LC_ALL,
       LC_MESSAGES etc... influencent la localisation.

       TMPDIR  modifie  le préfixe de chemin d'accès des fichiers
       crées par tmpnam() et consort, les répertoires temporaires
       de sort(1) ou d'autres programmes.

       LD_LIBRARY_PATH,  LD_PRELOAD  et les autres variables LD_*
       modifient le comportement  du  chargeur/éditeur  de  liens
       dynamique.

       POSIXLY_CORRECT  oblige  certains programmes ou routines à
       respecter scrupuleusement le standard POSIX.

       Le comportement de malloc() est inluencé par les variables
       MALLOC_*.

       La  variable  HOSTALIASES fourni le nom du fichier d'alias
       consulté par gethostbyname().

       TZ et TZDIR gèrent les fuseaux horaires.

       TERMCAP donne des indications sur la manière de traiter le
       terminal  (ou  donne  le  nom  d'un  fichier contenant ces
       spécifications).

       Etc... etc...

       Il est clair  qu'il  y  a  ici  un  risque  concernant  la
       sécurité.  De  nombreuses  commandes  système peuvent être
       induites en erreur par un utilisateur qui  fournirait  des
       valeurs particulières pour IFS ou LD_LIBRARY_PATH.

VOIR AUSSI
       login(1),  sh(1),  bash(1),  csh(1),  tcsh(1),  execve(2),
       exec(3), getenv(3), putenv(3), setenv(3), unsetenv(3).


TRADUCTION
       Christophe Blaess, 1997.






Linux                       2 Mai 1999                          2